2012-11-07 57 views
9

我使用下面的命令ImageMagick的PDF轉換爲圖像

-density 140 -limit memory 64MB -limit map 128MB [pdffile] page.png 

下面是結果轉換由最終用戶上傳到圖像的各種PDF文件時改變顏色。在右側,我們有原始PDF和左側輸出圖像。正如你所看到的,顏色是非常明顯的不同。

什麼可能導致這種情況,以及如何解決它?

image

回答

7

試試下面的命令:

-density 140 -limit memory 64MB -limit map 128MB -colorspace RGB [pdffile] page.png 
+0

那麼做了,謝謝 –

+1

如果你不適合,請嘗試'sRGB'而不是'RGB'。 – joeytwiddle

0

使用-resample選項:

-density 140 -resample 100 -limit memory 64MB -limit map 128MB [pdffile] page.png 
3

編輯:我後來發現,ImageMagick的可以做到這一點很好,我只是需要使用-colorspace sRGB

我最後的命令是:

convert -density 560 -limit memory 64MB -limit map 128MB \ 
     -colorspace sRGB [pdffile] -scale 25% page.png 

過採樣和縮減爲應對下述窮人抗鋸齒。

之前,我發現,這裏是我以前的解決方案......


在我的情況下,由ImageMagick的convert產生的顏色是過飽和,很喜歡那些問題。我試圖使用IM 6.7.7.10-6ubuntu3轉換this file

  • -resample 100沒有什麼區別。

  • -colorspace RGB似乎會產生更準確的飽和度,但整個圖像比本應該更暗。

奇怪的是,this suggestion使用Ghostscript將替代ImageMagick的轉換,產生了非常接近正確的色彩:

gs -q -sDEVICE=png16m -dSubsetFonts=true -dEmbedAllFonts=true \ 
     -sOutputFile=page.png -r200 -dBATCH -dNOPAUSE [pdffile] 

(原始的建議通過了-dUseCIEColor選項,但對我來說這似乎以減少伽馬:光線像素很好,但暗像素太暗,所以我把它刪除了。)

之後,唯一困擾我的是消除鋸齒/邊緣在地點有點偏離(特別是在通過45度的曲線上可見)。爲了改善這一點,我創建了輸出四倍所需的分辨率,然後縮小後,使這些錯誤幾乎察覺不到。請注意,我必須使用ImageMagick的-scale,而不是而不是-geometry-resize,以避免bicubic ringing effects

-1

以下圖像顯示如果以較高分辨率採樣然後縮小,消除鋸齒效果如何提高。

雖然1120的質量比560好一點,但轉換需要很長時間,所以我可能會選擇560來做一個很好的時間:質量折衷。

-colorspace sRGB -density 140

enter image description here

-colorspace sRGB -density 280 -scale 50%

enter image description here

-colorspace sRGB -density 420 -scale 33.3333%

enter image description here

-colorspace sRGB -density 560 -scale 25%

enter image description here

-colorspace sRGB -density 1120 -scale 12.5%

enter image description here

(這是比較容易看出差別,如果你下載的最後兩個圖像,並在您最喜愛的圖像瀏覽器之間翻轉。或者向上滾動這張圖片列表,而不是向下滾動。你應該看起來變得越來越醜陋。)

相關問題