0
後,我在如下ImageMagick的獲得未捕獲的致命錯誤做5-7套PDF至JPG
Ubuntu 12.04 LTS
PHP 5.3.10-1ubuntu3.18 with Suhosin-Patch (cli)
ImageMagick 6.6.9-7
GPL Ghostscript 9.05 (2012-02-08)
我的GS是下/usr/bin
我連續轉換 - PDF到每個JPG pdf頁面到單張圖片。它第一次爲1-30套PDF工作,但現在我得到錯誤後,7套PDF正在完成
在命令行中運行PHP腳本。將5-7套PDF至JPG單獨的圖像(約1000 JPG)後,我發現了以下錯誤
PHP Fatal error: Uncaught exception 'ImagickException' with message 'Postscript delegate failed `../books/58/58.pdf': @ error/pdf.c/ReadPDFImage/663' in /var/www/mysite/public_html/admin/lib.php:10
Stack trace:
#0 /var/www/mysite/public_html/admin/lib.php(10): Imagick->__construct('../books/58/58....')
#1 /var/www/mysite/public_html/admin/test.php(118): include('/var/www/stagin...')
#2 {main}
thrown in /var/www/mysite/public_html/admin/lib.php on line 10
lib.php有腳本,將PDF轉換爲JPG - 代碼如下
<?php
$file_name = "../books/$book_id/$book_id".'.pdf';
mkdir("../books/$book_id/pages");
// Strip document extension
$file_name = basename($file_name, '.pdf');
// Convert this document
// Each page to single image
$img = new imagick("../books/$book_id/$book_id".'.pdf');
// Set image resolution
// Determine num of pages
$img->setResolution(300,300);
$num_pages = $img->getNumberImages();
// Convert PDF pages to images
for($i = 0;$i < $num_pages; $i++) {
// Set iterator postion
$img->setIteratorIndex($i);
// Set image format
$img->setImageFormat('jpeg');
// Write Images to temp 'upload' folder
$img->writeImage("../books/$book_id/pages/$i".'.jpg');
}
$img->destroy();
?>
得到錯誤後,它停止轉換,但是當我再次運行腳本時,它會再次運行5-7套PDF並再次停止。 任何人都可以告訴我我在這裏錯過了什麼。
我感謝您的善意幫助。 預先感謝您。
你的ghostscript和ImageMagick是相當過時的,這些東西總是在改進 - 也許你可以更新你的軟件,看看是否有幫助... –
嘗試直接使用Ghostscript,如果你想要的是每個頁面的JPEG一個PDF文件。這樣,如果出現錯誤,您可以告訴我們它說了什麼,並且您可以打開GS錯誤報告。除非您計劃在渲染完圖像後處理圖像,否則不需要ImageMagick,GS可以單獨完成這項工作。 – KenS