我使用下面的命令ImageMagick的PDF轉換爲圖像
-density 140 -limit memory 64MB -limit map 128MB [pdffile] page.png
下面是結果轉換由最終用戶上傳到圖像的各種PDF文件時改變顏色。在右側,我們有原始PDF和左側輸出圖像。正如你所看到的,顏色是非常明顯的不同。
什麼可能導致這種情況,以及如何解決它?
我使用下面的命令ImageMagick的PDF轉換爲圖像
-density 140 -limit memory 64MB -limit map 128MB [pdffile] page.png
下面是結果轉換由最終用戶上傳到圖像的各種PDF文件時改變顏色。在右側,我們有原始PDF和左側輸出圖像。正如你所看到的,顏色是非常明顯的不同。
什麼可能導致這種情況,以及如何解決它?
試試下面的命令:
-density 140 -limit memory 64MB -limit map 128MB -colorspace RGB [pdffile] page.png
使用-resample
選項:
-density 140 -resample 100 -limit memory 64MB -limit map 128MB [pdffile] page.png
編輯:我後來發現,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。
以下圖像顯示如果以較高分辨率採樣然後縮小,消除鋸齒效果如何提高。
雖然1120的質量比560好一點,但轉換需要很長時間,所以我可能會選擇560來做一個很好的時間:質量折衷。
-colorspace sRGB -density 140
-colorspace sRGB -density 280 -scale 50%
-colorspace sRGB -density 420 -scale 33.3333%
-colorspace sRGB -density 560 -scale 25%
-colorspace sRGB -density 1120 -scale 12.5%
(這是比較容易看出差別,如果你下載的最後兩個圖像,並在您最喜愛的圖像瀏覽器之間翻轉。或者向上滾動這張圖片列表,而不是向下滾動。你應該看起來變得越來越醜陋。)
那麼做了,謝謝 –
如果你不適合,請嘗試'sRGB'而不是'RGB'。 – joeytwiddle