在Mac上使用PHP Imagick扩展找不到Tiff委托


Using PHP Imagick extension on Mac does not find Tiff delegate

我已经在Mac上安装了ImageMagick,并尝试使用ImageMagick扩展提供的PHP API将TIFF图像转换为JPEG图像。当我尝试这样做时,我会得到以下错误:

no decode delegate for this image format 

当我在命令行上执行convert image1.tiff image1.jpg时,它会起作用。

出于某种原因,Imagick的PHP扩展认为TIFF委托显然没有安装。为什么我会得到不同的结果,我该如何修复?

我找到了解决方案。我使用Homebrew安装了ImageMagick和PHP ImageMagick扩展php53-imagick。以这种方式安装时,在配置方面没有太多选择。php53-imagick被配置为使用ImageMagick的Homebrew安装。

为了解决这个问题,我自己下载并编译了Imagick PHP扩展的源代码。您必须进行的关键配置是./configure --with-imagick=/user/local或ImageMagic/wand文件夹所在的任何位置。

imagick.so将出现在modules目录中,您需要将其添加到php.ini

来自另一个问题:在Homebrew中有一个更方便的解决方案,使用命令

brew install libtiff
brew install imagemagick --with-libtiff

(请参阅Imagemagik在mac os x mountain lion上找不到.tif格式的deletegates库以供参考)