问题描述
我正在使用imagick 3.0.1和phmagick(http://www.francodacosta.com/phMagick/download)。无论如何,当我尝试将PDF转换为JPEG时,两者都给我同样的错误。
I'm using imagick 3.0.1 and also phmagick (http://www.francodacosta.com/phMagick/download). No matter what, both are giving me the same kind of error when I try to convert a PDF to JPEG.
例如:
Postscript delegate失败`/ tmp / magick-bfxIrUJ5':没有这样的文件或目录@ error / pdf.c / ReadPDFImage / 669
我正在使用Ghostcript- 9.05(在/ usr / local / bin / gs上运行)。
另外ImageMagick-6.7.6-8(在/ usr / local / bin / convert上运行)。
I'm using Ghostcript-9.05 (running on /usr/local/bin/gs).Also ImageMagick-6.7.6-8 (running on /usr/local/bin/convert).
我已经检查了文件夹的权限(755)。 ImageMagick在Terminal工作得很好。
I already checked folder's permission (755). ImageMagick works wonderful from Terminal.
例如,我的PHP使用Imagick:
For example, my PHP using Imagick:
//use imagick
$im = new imagick( '/pdf/553571072.pdf' );
// convert to jpg
$im->setImageColorspace(255);
$im->setCompression(Imagick::COMPRESSION_JPEG);
$im->setImageFormat('jpeg');
//write image on server
$im->writeImage('/jpg/553571072.jpg');
顺便说一下,Imagick会出现在我的phpinfo()中。我正在使用linux / apache / amd64。
By the way Imagick it's showing up in my phpinfo(). I'm working on linux/apache/amd64.
任何建议都将受到高度赞赏!
Any advice will be highly appreciated!
推荐答案
好的,这要归功于Nuno Franco da Costa的帮助()。
OK, this finally works, thanks to the help of Nuno Franco da Costa (http://www.francodacosta.com/).
问题在于我的GhostScript路径对于Shell来说是好的,但它对于系统和PHP来说是错误的。要更正您应将 / usr / local / bin / gs
文件链接到 / usr / bin / gs
。
The problem was that my GhostScript path was OK for the Shell, but it was wrong for the System and PHP. To correct that you should link your /usr/local/bin/gs
file to /usr/bin/gs
.
从命令行管理程序执行以下操作:
[root@din ~]# convert -list configure | grep -i delegates
DELEGATES bzlib fontconfig freetype jpeg jng png tiff x11 xml zlib
检查到查看 / usr / bin
中是否已存在 gs
文件。如果是,我们将创建它的备份。
如果没有 / usr / bin / gs
你可以跳过这个步骤
Check to see if a gs
file already exists in /usr/bin
. If it does, we'll create a backup of it.
If there is no /usr/bin/gs
you can skip this step
[root@din ~]# ls -l /usr/bin/gs
-rwxr-xr-x 1 root root 6024 Sep 30 2010 /usr/bin/gs
[root@din ~]# mv /usr/bin/gs /usr/bin/gs.orig
现在从 / usr / local / bin / gs $ c $创建链接c>至
/ usr / bin / gs
Now create the link from /usr/local/bin/gs
to /usr/bin/gs
[root@din ~]# sudo ln -s /usr/local/bin/gs /usr/bin
That should solve the problem. Thanks a lot guys.
这篇关于Imagick以及phmagick的问题:Postscript委托失败/没有这样的文件或目录的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!