加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 与Imagick以及phmagick的问题:Postscript委托失败/没有

发布时间:2020-12-13 18:24:08 所属栏目:PHP教程 来源:网络整理
导读:我正在使用imagick 3.0.1和phmagick(http://www.francodacosta.com/phMagick/download).无论如何,当我尝试将PDF转换为JPEG时,两者都给我同样的错误. 例如: Postscript委托失败了`/ tmp / magick-bfxIrUJ5’:没有这样的文件或目录@ error / pdf.c / ReadPDF
我正在使用imagick 3.0.1和phmagick(http://www.francodacosta.com/phMagick/download).无论如何,当我尝试将PDF转换为JPEG时,两者都给我同样的错误.

例如:
Postscript委托失败了`/ tmp / magick-bfxIrUJ5’:没有这样的文件或目录@ error / pdf.c / ReadPDFImage / 669

我正在使用Ghostcript-9.05(在/usr/local / bin / gs上运行).
还有ImageMagick-6.7.6-8(在/usr/local / bin / convert上运行).

我已经检查了文件夹的权限(755). ImageMagick在Terminal工作得很好.

例如,我的PHP使用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.

任何建议将受到高度赞赏!

好吧,这要归功于Nuno Franco da Costa( http://www.francodacosta.com/)的帮助.

问题是我的GhostScript路径对于Shell来说是好的,但它对系统和PHP来说是错误的.要更正您应将/usr/local / bin / gs文件链接到/usr/bin/gs.

从Shell执行以下操作:

[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,您可以跳过此步骤

[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到/usr/bin/gs的链接

[root@din ~]# sudo ln -s /usr/local/bin/gs /usr/bin

那应该可以解决问题.非常感谢你们.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读