2013-07-25 166 views
2

我正在處理一個大問題:我必須從PDF文件創建一個完美的彩色JPEG。但是在綠色或藍色方面仍然存在很小的差異。我在Debian系統上使用Ghostscript版本8.71。ImageMagick或Ghostscript:從PDF創建圖像

原文PDF文件:

最簡單的方法通過

convert output.pdf -density 600 -quality 100 output.jpg 

結果:

創建一個非常淺綠色,與PDF中的顏色無關。

之後,我嘗試了其他兩種方法有更好的效果,但並不完美:

通過ImageMagick的:

convert output.pdf -profile sRGB_v4_ICC_preference.icc \ 
        -density 600 -quality 100 test.jpg 

convert -profile ISOcoated_v2_eci.icc -profile eciRGB_v2.icc \ 
     -quality 100 test-1.jpg finish-1.png 

結果:鏈接像以前一樣與文件名「精0.png」(我可以只寫兩個鏈接)。

通過Ghostscript的:

gs -dNOPAUSE -sDEVICE=jpegcmyk -dFirstPage=1 -dLastPage=237 \ 
    -sOutputFile=image%d.jpg -dJPEGQ=95 -dUseCIEColor -g850x610 \ 
    -dPDFFitPage -r300 -q output.pdf -c quit 

結果:鏈接喜歡用文件名 「image1.jpg」(我可以只寫兩個環節)前。

任何人都有一個想法來獲得完美的結果?

回答

1

首先,使用最新版本的Ghostscript,8.71是3歲。 9.0之前的版本將使用標準的PostScript顏色轉換,9.0以後使用小CMS。您的PDF文件使用基於ICC配置文件的3色組件(RGB)色彩空間,PostScritp RGB-> CMYK速度快但不準確,所以最好不要這樣做。

我相信如果你使用的是一個體面的最新版本,你會發現沒有任何進一步調整的結果足夠。不要使用-dUseCIEColor!這是一個可怕的PostScript kludge。

它看起來像jpegcmyk設備沒有做適當的顏色管理,有沒有一個原因,你不能使用jpeg設備?

+0

沒有dUseCIEColor的結果是更醜陋。我不知道是否可以將我們的系統更新到9.0或更高版本。它可用於debian嗎?使用jpegcmyk的結果比使用jpeg設備更好。這是我使用它的唯一原因。 – BeeJay

+0

使用jpegcmyk強制進行顏色轉換(原始圖像爲RGB),這會導致顏色問題。 Ghostscript是開源的,所以你可以自己構建它。 – KenS

+0

您尚未指定命令行,因此無法比較結果。 9.05 *仍然*近18個月過時,我會使用當前的代碼(即將是9.09)。沒有詳細查看這些文件,我不能完全確定,但是您需要知道,如果您正在查看PDF文件,輸入顏色很可能會被PDF查看應用程序轉換(和顏色管理)對於你的(可能是RGB)顯示器來說是正確的。不同的應用程序查看CMYK可能會對RGB進行不同的轉換,因此顏色會顯得不同 – KenS