我真的很惊讶这个问题还没有回答。所以,这就是我的问题。我试图在MAMP PRO 3.2.1下使用imagick打开PDF
我已经设置了本地服务器,并将以下代码放入其中:
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
$img = new imagick();
// $img->readImage("filename.jpg");
$img->readImage("filename.pdf");
$img->setImageCompression(imagick::COMPRESSION_JPEG);
$img->setImageCompressionQuality(50);
$img->stripImage();
echo "I've just done a bunch of useless stuff!";
?>
而不是得到回应&#34;我只是做了一堆无用的东西!&#34;我收到以下错误:
致命错误:未捕获的异常&#39; ImagickException&#39;消息&#39; FailedToExecuteCommand`&#34; / Applications / MAMP / Library / bin / gs&#34; -q -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap = 500000000 -dAlignToPixels = 0 -dGridFitTT = 2&#34; -sDEVICE = pngalpha&#34; -dTextAlphaBits = 4 -dGraphicsAlphaBits = 4&#34; -r72x72&#34; &#34; -sOutputFile = / var / tmp中/ magick-37204WejycxOWotDX%d&#34; &#34; -f / var / tmp中/ magick-37204yFoZNLVNVn6B&#34; &#34; -f / var / tmp中/ magick-37204aRp_iZaRakLl&#34;&#39; (-1)@ error / utility.c / SystemCommand / 2051&#39; in /Users/Jason/Code/git/imagick-test/web/imagick.php:11堆栈追踪:#0 /Users/Jason/Code/git/imagick-test/web/imagick.php(11):Imagick- &gt; readimage(&#39; projects / 26/556 ......&#39;)#1 {main}在第8行的/Users/Jason/Code/git/imagick-test/web/imagick.php中抛出< / p>
奇怪的是,如果我注释掉PDF行并取消注释JPG行,那么代码运行没有任何问题。
现在,我知道ghostscript已经安装了MAMP PRO,所以我不需要安装那个或任何东西,但我不知道为什么,怎么做,甚至做什么不能当我的文件在/var/tmp/
文件夹中时,读取/Users/Jason/Code/git/imagick-test/web/imagick/
中的文件。我做了一切,但把头发撕了。如果您能提供任何信息,请做。
答案 0 :(得分:2)
我写信给MAMP Pro开发人员,这是他们的回复:
您好,
抱歉延误。您需要安装xQuartz。点击此处的链接
我没有在任何地方看到这个记录,所以我用这个答案更新我的问题。
他们为延迟道歉,因为我在他们部署MAMP PRO 3.4时请求他们帮忙。