7

我有一个需要 PDF 到图像转换的 PHP 站点,我们显然正在使用 imagemagick。然而,现在我们正试图转移到不同的主机,似乎我将无法在新主机上安装 imagemagick 包来做和我们现在一样的事情。

所以问题是 - 有什么方法可以使用纯 PHP 方法将 PDF 转换为图像,或者使用其他任何可以弹出到 DOCUMENT_ROOT 并且不需要正确安装到系统中的方法。

这是一个Linux系统,但我不知道是什么发行版,我无法检查,因为我在这个系统中的权利真的很有限。

谢谢亚历克斯。

4

2 回答 2

10

“[...] 需要 PDF 到图像的转换,我们显然正在使用 imagemagick。”

这一点都不明显。

因为ImageMagick 不能单独将 PDF 转换为图像。它需要使用 Ghostscript 作为它的“代表”。所以你可能已经安装了 ImageMagick,但没有安装 Ghostscript,它不会工作。

反之亦然,您可以安装 Ghostscript 但没有安装 ImageMagick——您仍然可以轻松地将 PDF 转换为图像。例如,转换为分辨率为 144 DPI 的 JPEG(不指定一个,您将得到 72 DPI):

gs              \
  -o out.jpg    \
  -sDEVICE=jpeg \
  -r144         \
   in.pdf

此外,您可以随意在任何地方安装 Ghostscript。

顺便说一句:我会远离不提供 ImageMagick 或 Ghostscript 安装的托管服务提供商,更不用说不允许自己安装了......)

于 2012-09-12T18:01:15.657 回答
4

在 linux 系统上,静态链接的东西可以在没有外部库依赖的情况下工作。因此,如果您可以获取/创建静态链接的 imagemagick 可执行文件,则可以直接在 docroot 下使用它。可能它不是那么微不足道。

或者您可以使用远程站点为您进行转换。喜欢: http: //pdf2jpg.net/ (对于张贴上传表单,这样的 curl 会很有用。)

于 2012-09-12T12:58:06.603 回答