我已经使用这里定义的步骤在我的WAMP中安装了Imagick3.4.4:https://newsinfo-blog.blogspot.com/2015/03/install-imagick-on-wamp-server.html
然后使用以下代码将PDF转换为JPEG图像:
$im = new Imagick();
$im->setResolution(300,300);
$im->readImage($_SERVER['DOCUMENT_ROOT'] . '/codeigniter/assets/lofthouse.pdf[0]');
$im->setImageFormat('jpeg');
$im->writeImage('thumblofthouse.jpg');
$im->clear();
$im->destroy();但是,我收到以下错误消息:
类型: ImagickException发生了未知错误
消息: NoDecodeDelegateForThisImageFormat ` `PDF‘@ error/constitute.c/ReadImage/509
我做错什么了?如何将PDF的第一页保存为图像?
我注意到,当我尝试:
print_r(Imagick::queryFormats());结果是一个空数组。
编辑:
以下是我迄今所采取的步骤:
folder.
EDIT2:我也完成了以下步骤,但我肯定不确定是否需要这些步骤
<policy domain="module" pattern="{PS,PDF,XPS}" rights="read|write"/>来修改ImageMagick中的<policy domain="module" pattern="{PS,PDF,XPS}" rights="read|write"/>。以下是phpinfo()返回的内容:
imagick module enabled
imagick module version 3.4.4
imagick classes Imagick, ImagickDraw, ImagickPixel, ImagickPixelIterator, ImagickKernel
Imagick compiled with ImageMagick version ImageMagick 7.0.7-11 Q16 x86 2017-11-23 http://www.imagemagick.org
Imagick using ImageMagick library version ImageMagick 7.0.7-11 Q16 x86 2017-11-23 http://www.imagemagick.org
ImageMagick copyright Copyright (C) 1999-2015 ImageMagick Studio LLC
ImageMagick release date 2017-11-23
ImageMagick number of supported formats: 0EDIT3:我可以使用ImageMagick通过命令行将PDF转换成JPG。在完成上述所有步骤之后,我现在得到了以下错误:
Type: ImagickException
Message: no decode delegate for this image format `PDF' @ error/constitute.c/ReadImage/509发布于 2021-04-19 23:29:11
我也有同样的问题。解决了。
检查您的文件扩展名,确保有'.pdf'
注意:在我的情况下,ifpdf版本是1.4或更少,一个坏的或空的扩展不是一个问题,转换将工作,但对于新的pdf版本,我得到例外“没有委托.”。
https://stackoverflow.com/questions/60759096
复制相似问题