2017-05-15 50 views
0

我正試圖找出imagemagick操作來減少圖像文件大小,通過降低其質量。使用imageMagick縮小圖像文件大小

此操作工作

convert -fuzz 1% -trim -quality 90 -limit memory 32MiB original.jpg converted.jpg 

降低品質因數會降低IMAGESIZE。有沒有其他方法可以實現同樣的效果,並增加了MAX_SIZE的限制。

例如5MB的圖像應縮減爲2MB

+0

出於興趣,您應該整理出您的命令。在大多數情況下,它是「轉換輸入選項輸出」。您通常可以在V6中獲得錯誤的訂單,但V7更嚴格。如果/當您升級到V7時,這可以爲您節省一些困惑。 – Bonzo

+0

@Bonzo謝謝,我會記住這一點 – akash

回答

2

你會使用-define jpeg:extent=...

下面是一個隨機數據的大圖像的示例,它需要非常大的文件大小才能以合理的質量準確表示它。

convert -size 10000x1000 xc:gray +noise random -define jpeg:extent=2MB out.jpg 

結果

-rw-r--r-- 1 mark staff 1844050 15 May 10:44 out.jpg 

並檢查所使用的質量:

identify -format "%Q" out.jpg 
21 

又如:

convert -size 10000x1000 xc:gray +noise random -define jpeg:extent=400kb out.jpg 

結果

-rw-r--r-- 1 mark staff 377757 15 May 10:44 out.jpg 

並檢查使用的質量:

identify -format "%Q" out.jpg 
5 
+0

這真棒!謝謝 – akash

0

除了質量的一個重要因素是色度二次採樣。默認情況下,IM使用「減半色度」,但可以使用「分色色度」。詳細信息請參見this question

檢查jpeg:extent option在IM的轉換:

您還可以使用Google's Guetzli。據我瞭解,它會嘗試各種JPEG編碼選項以減小文件大小,同時檢查結果的視覺可接受性。

+0

請注意,正確的IM 6語法在應用設置和運算符之前先讀取光柵圖像。因此,請閱讀您在convert命令之後立即輸入。 – fmw42