php實作pdf轉換成圖片的方法:先安裝好「GhostScript」;然後再使用imagick把PDF轉成圖片即可。
推薦:《PHP影片教學》
PHP中使用imagick實作把PDF轉成圖片
PHP Manual裡,對imagick的描述,真的是簡潔,每個成員函數,點擊打開就看到如下文本:
Warning This function is currently not documented; only its argument list is available.
剛才解決了PHP加載問題後,圖片的處理相當方便,網路上隨便找了一段:
getImageWidth(); $h = $imagick->getImageHeight(); if ($w > $width || $h > $height) { if ($crop) { $imagick->cropThumbnailImage($width, $height); } else { $imagick->resizeImage($width, $height, Imagick::FILTER_LANCZOS, 1, true); } } $processed_image = $imagick->getImageBlob(); return $processed_image; } $s=resize("123.jpg", 60, 40, 1); echo $s; ?>
但我要用這個擴充功能做的,是將PDF轉成PNG。 PDF哦!
setResolution(120,120); $im->setCompressionQuality(100); if($page==-1) $im->readImage($pdf); else $im->readImage($pdf."[".$page."]"); foreach ($im as $Key => $Var) { $Var->setImageFormat('png'); $filename = $path."/". md5($Key.time()).'.png'; if($Var->writeImage($filename) == true) { $Return[] = $filename; } } return $Return; } $path="images";//请确保当前目录下有这个文件夹,由于一直要用,所以就不加检测了 $s=pdf2png("test.pdf",$path); $scount=count($s); for($i=0;$i<$scount;$i++) { echo ""; } ?>
跟上面的差不多吧?但總是不成功,readImage那邊異常了,查看錯誤輸出:
PHP Fatal error: Uncaught exception 'ImagickException' with message 'PostscriptDelegateFailed `test.pdf': No such file or directory'
百度谷歌了好久,最後靈機一動,不是說Postscript麼?我找,我裝。
這張Postscript,其實是GhostScript。
裝好後,一跑,OK啦!
以上是php如何實作pdf轉換成圖片的詳細內容。更多資訊請關注PHP中文網其他相關文章!