【问题标题】:Imagick can't convert PDF to JPEG but ImageMagick canImagick 无法将 PDF 转换为 JPEG,但 ImageMagick 可以
【发布时间】:2012-10-07 18:34:26
【问题描述】:

首先,我将 ImageMagick 与 Imagick PHP5 扩展结合使用了一段时间,完全没有问题,直到我不小心删除了 GhostScript。从那以后,我试图让它重新工作,但无济于事。

重新安装所有内容后,ImageMagick 能够将 PDF 转换为 JPEG。但是,当我运行 convert -list configure 时,我在 DELEGATE 列表中找不到 gs。当我运行convert sample.pdf[1] sample.jpg 时,它仍然可以完美运行。但是,当我通过 sudo apt-get install php5-imagick 重新安装 php5-imagick 扩展程序时,当我尝试将 PDF 转换为图像时会引发错误。

Fatal error: Uncaught exception 'ImagickException' with message 'no decode delegate for this image formatupload/guide.pdf'@error/constitute.c/ReadImage/533.`

它是由以下代码抛出的:

<?php
//header("Content-type: image/jpeg"); 
$img = new imagick("upload/guide.pdf[1]"); 
$img->setImageFormat("jpg");
echo $img; 
?>

我看不出问题出在哪里,因为 ImageMagick 本身工作正常,我想是 Imagick 不能很好地与 ImageMagick 交互。

【问题讨论】:

    标签: php imagemagick imagick


    【解决方案1】:

    我通过不通过 Ubuntu 存储库安装 Imagick 解决了这个问题。当我运行sudo apt-get autoremove php5-imagick 并尝试通过 pecl 安装它时,它抛出一个错误并说 Imagick 已经安装(这很奇怪,因为我卸载了它并重新启动了 apache)。

    所以我通过sudo pecl uninstall imagick卸载它,然后使用sudo pecl install imagick重新安装它,然后将extension=imagick.so添加到php.ini,并再次重新启动apache。现在一切都恢复正常了。希望这能帮助遇到同样问题的人。

    【讨论】:

      猜你喜欢
      • 2015-09-05
      • 2019-01-27
      • 2012-03-02
      • 1970-01-01
      • 2010-10-09
      • 1970-01-01
      • 2014-08-13
      • 2019-12-20
      • 1970-01-01
      相关资源
      最近更新 更多