2013-05-29 62 views
0

我使用Imagick從大量的pdf文件生成圖像。我也想要RGBsRGB色彩模式的圖像,所以Internet Explorer可以正確顯示圖像。如何在PHP中生成PDF文件中的圖像?

我已經試過

$im = new imagick($fileName.'[0]'); 
//$im->setImageColorspace(Imagick::COLORSPACE_SRGB); //try this already 
// $im->setImageColorSpace(1); //try this already 
    $im->setResolution(300,300); 
    $im->setImageFormat('jpeg'); 
    $im->writeImage($imageFile); 
    $im->clear(); 
    $im->destroy(); 

我沒有得到的圖像,但顏色是setImageColorspacesetImageColorSpace方法的路要走。 (例如:顏色是倒置的。)

如果我註釋掉這些方法,圖像看起來不錯,但其中一些不是RGB模式,並在Internet Explorer中產生問題。

我真的需要圖像上的RGB色彩模式。有沒有辦法做到這一點?非常感謝!

回答

1

您似乎遇到CMYK pdfs的問題。你有沒有嘗試將它們轉換爲PNG? PNG -contrary to jpeg - 只對RGB進行編碼,因此圖像無論如何都處於正確的色彩空間。

您可能還想看看ghostscript(引擎背後的imagemagicks PDF轉換)和它的--UseCIE開關。

我寫了一個php包裝到ghostscript,你可以在github找到你想要使用ghostscript時覺得有用的東西。

相關問題