2010-11-18 87 views
3

我想將PDF轉換爲image.But當了把圖像生成是從original.Here得到模糊的代碼PDF到圖像使用PHP-imagick API

$uploadfile = ".pdf[53]"; 
$img = new Imagick($uploadfile); 
$img->setResolution(300,300); 
$img->resampleImage(150,150,imagick::FILTER_UNDEFINED,1); 
$img->resizeImage(512,700,Imagick::FILTER_LANCZOS,0); 
$img->setImageFormat('jpeg'); 
$img->setImageUnits(imagick::RESOLUTION_PIXELSPERINCH); 
$img->writeImage ("p-53.jpeg"); 

你能幫幫我。 謝謝。

+0

Z:能否請您分享您的完整的代碼我需要的是在一個笨PDF轉換爲圖像的,因爲我是新來的笨我stuckoff – user1894647 2016-01-19 07:13:51

回答

6

刪除resample和resize調用,看看你得到了什麼。看起來你正在縮小,然後升高它。

編輯:setResolution(300,300)爲時已晚 - 圖像已經被渲染。像這樣做:

$im = new Imagick(); 
$im->setResolution(300, 300); 
$im->readImage($uploadfile); 
+0

感謝重播,但它沒有爲我工作。有任何其他的想法嗎?我可以用命令行做得最好,但速度慢,所以我已經切換回php api.Here是命令「urs/bin/convert -density 300x300 uploadfile。 pdf [2] -resample 150 -resize 512x700!page.jpeg 2> &1"; – 2010-11-18 05:36:57

+0

增加了另外一個建議。PDF在閱讀之前需要知道分辨率,因爲文件可以以任何分辨率呈現,它需要知道你想要什麼然後把它變成圖像 – 2010-11-18 13:44:09

+1

你能否提供一個例子如何正確地做到這一點,因爲我也在尋找這個解? – user398341 2011-04-21 08:45:31