MAMP PRO和imagick' ImagickException'消息' FailedToExecuteCommand'

时间:2015-05-26 23:09:59

标签: php imagick mamp-pro

我真的很惊讶这个问题还没有回答。所以,这就是我的问题。我试图在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/中的文件。我做了一切,但把头发撕了。如果您能提供任何信息,请做。

1 个答案:

答案 0 :(得分:2)

我写信给MAMP Pro开发人员,这是他们的回复:

  

您好,

     

抱歉延误。您需要安装xQuartz。点击此处的链接

     

https://support.apple.com/en-us/HT201341

     

http://xquartz.macosforge.org/landing/

我没有在任何地方看到这个记录,所以我用这个答案更新我的问题。

他们为延迟道歉,因为我在他们部署MAMP PRO 3.4时请求他们帮忙。