2015-05-26 222 views
0

我真的很驚訝,這個問題還沒有得到解答。所以,這是我的問題。我試圖打開下MAMP PRO使用imagick一個PDF 3.2.1MAMP PRO和imagick'ImagickException'消息'FailedToExecuteCommand'

我已經建立了一個本地服務器,我把它下面的代碼:與

<?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!"; 
?> 

不但得不到響應「我剛剛做了一堆無用的東西!」我得到以下錯誤:

Fatal error: Uncaught exception 'ImagickException' with message 'FailedToExecuteCommand `"/Applications/MAMP/Library/bin/gs" -q -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 "-sDEVICE=pngalpha" -dTextAlphaBits=4 -dGraphicsAlphaBits=4 "-r72x72" "-sOutputFile=/var/tmp/magick-37204WejycxOWotDX%d" "-f/var/tmp/magick-37204yFoZNLVNVn6B" "-f/var/tmp/magick-37204aRp_iZaRakLl"' (-1) @ error/utility.c/SystemCommand/2051' in /Users/Jason/Code/git/imagick-test/web/imagick.php:11 Stack trace: #0 /Users/Jason/Code/git/imagick-test/web/imagick.php(11): Imagick->readimage('projects/26/556...') #1 {main} thrown in /Users/Jason/Code/git/imagick-test/web/imagick.php on line 8

奇怪的是,如果我註釋掉PDF線,並取消對JPG線,代碼運行沒有任何問題。

現在,我知道ghostscript與MAMP PRO一起安裝,所以我不需要安裝那個或任何東西,但我不知道爲什麼,怎麼樣,甚至不知道該怎麼做才能夠讀取文件在/var/tmp/當我的文件在/Users/Jason/Code/git/imagick-test/web/imagick/文件夾中。我做了一切,但把我的頭髮掉了。如果你可以提供任何信息,請做。

+0

當你自己執行/ Applications/MAMP/Library/bin/gs,或者通過PHP執行'exec'時會發生什麼? – Danack

+0

你能詳細說一下嗎?我可以自己運行gs。不過,我不知道如何通過MAMP PRO上的imagick來執行它。 –

+0

我的意思是這個http://php.net/manual/en/function.exec.php exec。看起來可能是某些權限原因,Imagick/ImageMagick無法運行該命令...... – Danack

回答