在Ubuntu 14.04上安装php5-imagick

5

我花了很长时间在谷歌上搜索这个问题,但是没有结果,所以我希望在这里得到一些帮助。

我使用的是Ubuntu 14.04,并已安装php5-imagick,ImageMagick和一些额外的库使其正常运行。从命令行测试安装可以完美地运行,并且所有委托按照“convert -list configure”的输出进行了安装(如下所示)。

在此之前它可以正常工作和表现完美。我唯一能想到的是Ubuntu的一些系统/安全更新。在出现此错误之前,我的代码和IM安装都没有被任何用户更改过。

问题是当我从PHP脚本中调用Imagick时,它显示以下错误:

#420: no decode delegate for this image format '/' @ error/constitute.c/ReadImage/544

这个错误会同时出现在JPG和PNG格式中。

非常感谢您的帮助!


'convert -version'命令的输出结果:

Version: ImageMagick 6.7.7-10 2014-03-06 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC
Features: OpenMP

'convert -list configure'的输出结果:

DELEGATES     bzlib djvu fftw fontconfig freetype jbig jpeg jng jp2 lcms2 lqr lzma openexr pango png rsvg tiff x11 xml wmf zlib
LIBS          -lMagickCore -llcms2 -ltiff -lfreetype -ljpeg -llqr-1 -lglib-2.0 -lfftw3 -lfontconfig -lfreetype -lXext -lSM -lICE -lX11 -lXt -llzma -lbz2 -lz -lm -lgomp -lpthread -lltdl

我曾经遇到过同样的问题 - 解决方案是重建整个服务器。这有点激进,但我尝试自己编译和构建imagemagick而不是使用apt软件包,并且运气很好。你可以尝试一下。 - Repox
1
重建服务器不是一个选项,因为它是我的开发机器。我可以尝试卸载imagemagick并重新编译/重建整个系统... - pixelsforbreakfast
3个回答

1
我认为这里的问题是Imagemagick没有配置支持SVG。安装基本的php5-imagick包并不能带来一些额外的东西,你需要做一些其他的事情。
要在PHP Imagick中安装对SVG的支持,请在相关服务器的终端中键入以下内容:
sudo apt-get update
sudo apt-get install libmagickcore5-extra

Apt将列出许多依赖包,包括SVG库,并询问您是否要继续。按Y键并让它继续进行。

0

看起来你正在尝试打开名为'/'的文件。

奇怪的是,Imagick无法打开该文件。

尝试传入一个真实的图像文件名。


正如我所提到的,它涉及JPG和PNG两种格式。我删除了图像路径,因为它与错误无关且使错误信息变得更长。但你是对的,名为'/'的文件将不会被处理... :) 我应该提到我已经修改了图像路径。 - pixelsforbreakfast

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接