2011-09-28 104 views
42

我有一個.eps文件,我可以在Photoshop中查看,並且它具有非常高的分辨率,銳邊等,甚至比1024x1024更大。如何把.eps文件轉換成高質量1024x1024 .jpg?

With ImageMagick我想將此.eps轉換爲具有非常高分辨率的1024x1024 .jpg。

然而,用下面的命令,圖像非常模糊:

convert -resize "1024x1024" -colorspace RGB -flatten test.eps test.jpg 

什麼ImageMagick的參數做我必須使用使得所得到的.JPG是1024×1024和高品質,銳利的影像?

這裏,我們發現了一些XMP數據,或許是什麼原因造成它不能與-size經過調整:

enter image description here

+6

由於JPG使用DCT轉換,其目的是自然圖像,即照片。它不適合邊緣銳利的圖像。用png代替。只是一個想法... –

+0

命令'convert-resize「1024x1024」-colorspace RGB -flatten test.eps test.png'仍然產生一個模糊的.png文件,我需要增加dpi,我會認爲但不能得到正確的參數設置 –

+0

嘗試使用'-filter'描述[這裏](http://www.imagemagick.org/script/command-line-options.php?ImageMagick=l4s55sb18gpqvae2pfd820a1g4#filter)來改變resize方法用於找不到任何適用的過濾器設置 –

回答

74

對於矢量圖形,ImageMagick具有相互獨立的渲染分辨率和輸出大小。

嘗試像

convert -density 300 image.eps -resize 1024x1024 image.jpg 

這將在300dpi的渲染您的EPS。如果300 *寬度> 1024,那麼它將是銳利的。如果渲染效率太高,則會浪費大量內存來繪製高分辨率圖形,以便再次下載樣本。我目前不知道在一個IM命令中以「正確」的分辨率渲染它的好方法。

+3

謝謝,這樣做,實際上最好的解決方案結果是當密度=調整大小時,例如:'convert -density 1024x1024 -resize 1024x1024 test.eps test.jpg' –

+1

不,我不相信你會這樣做。它以1024dpi呈現圖像,然後將其下采樣到1024x1024像素。例如,4x4in EPS在內存中將變爲4096x4096px,然後調整爲1024x1024px。 – erjiang

+30

當我使用谷歌搜索時,我發現這個stackoverflow的答案恰好在另一個有正確答案和關鍵塊的之後。關鍵是要確保-density標誌(我使用「-density 400%」)出現在輸入文件名之前。在我的原始設置中,我將輸入文件名和輸出文件名之間的所有標誌夾在中間,在這種情況下-density不起作用(導致模糊的文本字體圖像)。所以讀者應該確保在test.eps和test.jpg中出現密度_before_。 [我常見的情況是將pdf轉換爲PNG。] –

1

也許你應該-quality 100 -size「1024×1024」試試吧,因爲調整大小通常給出難看的結果。

+1

hmm,'convert -colorspace RGB -flatten -quality 100 -size「1024x1024」test.eps test.jpg'創建一個尺寸爲100x41的.jpg,爲什麼會這樣是? –

+0

您是否嘗試過不帶引號?否則我不會得到,問題出在哪裏 – Stephan

+0

是的,我試過沒有引用的結果相同,一位同事提到「XMP信息定義縮略圖的尺寸較小」,也許我需要重寫那個? –