2012-10-18 108 views
1

當我嘗試通過PHP我的svg文件轉換爲前。 png文件我得到這個錯誤:錯誤轉換imagemagick圖像

$filename = '507e6221c9f0f.svg'; 
    $content = file_get_contents($filename); 
    $im = new Imagick(); 
    $im->readImageBlob($content); 

Fatal error: Uncaught exception 'ImagickException' with message 'no decode delegate for this image format `' @ blob.c/BlobToImage/347' in.. 

但是我通過表彰線做時,一切正常。我會使用PHP exec()命令,但我使用PHP + IIS服務器,所以我不想授予使用cmd.exe的權限(IUSR用戶)(IIS用戶)

任何人都可以告訴我如何解決這個問題?

回答

0

該錯誤意味着imagemagick不知道如何處理該文件。有些東西,你可以檢查:

1)手動檢查svg文件。 2)檢查你使用的是inkscape還是rsvg。 3)嘗試一個shell命令(假設你在linux上)像'convert 507e6221c9f0f.svg image.jpg'

可能在這裏發佈輸出,所以有人可以檢查它。

+0

正如我寫的,我可以從命令行轉換圖像,但不能從PHP腳本。 – Krystian

+0

糟糕!抱歉忽略。你可以將它轉換成cmd,並且你在窗戶上。你可以檢查$內容實際上是文件內容。可以爲file_get_contents提供完整的映像路徑。 –

+0

yaeah file_conent是不錯的 – Krystian