我目前使用php的imagick將一些PDF轉換爲圖像 - 這適用於圖像在輸出過程中被「切碎」的小細節。PDF尺寸對實際內容尺寸
這是由於包含在PDF VS實際內容維度信息的差異。
的PDF報告是一個612x792 72ppi文件,但是當我通過它預覽在Mac上導出圖像時,圖像是1651x1275 - 這怎麼可能?
顯然,出口是正確的,因爲該圖象在這些尺寸正確查看 - 可能不會是PDF被簡單地編碼錯誤,其中的寬度和高度進行混合?我怎樣才能通過代碼檢測到這一點?此外,圖像導出是一個不同的(更大)的大小,大約兩倍的大小,這導致我相信imagick沒有正確讀取一些信息。
基本上我想知道是否有確定實際的PDF內容大小合適的方式,這樣從它導出的圖像以最佳質量。
謝謝!
編輯:(添加的代碼)
<?php
$im = new Imagick();
$im->readImage("SomeTest.pdf");
$im->setImageColorspace(255);
$im->setCompression(Imagick::COMPRESSION_JPEG);
$im->setCompressionQuality(60);
$im->setImageFormat('jpeg');
$im->writeImages("SampleImage.jpg");
?>
使用的PDF格式如下: http://www.pantone.com/pages/MYP_mypantone/software_downloader.aspx?f=3
另外,這裏是imagick從identifyImage()函數的輸出,這似乎有點不對看着文件大小。
Array
(
[imageName] => /tmp/magick-XXehkI8e
[format] => PDF (Portable Document Format)
[geometry] => Array
(
[width] => 612
[height] => 792
)
[type] => TrueColor
[colorSpace] => RGB
[resolution] => Array
(
[x] => 72
[y] => 72
)
[units] => Undefined
[fileSize] => 50mb
[compression] => Undefined
[signature] => 9426f3fc4f45afd71941435a37d585d01e01d32458f3ca241e72892c2f7f35d5
)
似乎一切都很好。這真的很粗略。 – 2011-05-20 17:06:39
無論何時您將PDF轉換爲帶有圖像魔術貼的圖像,都要確保將「-density」參數設置爲正確的DPI,否則質量和尺寸將會非常可怕。 – Orbling 2011-05-20 18:21:47
標記,圖像大小實際上不起作用 - 在imagick中有一個明顯的圖像陣列,我需要弄清楚,這樣我才能在每個圖像上設置大小,然後再寫出它們。 – TeckniX 2011-05-20 20:14:51