Imagemagick - 品質85が動作しません。

Imagemagick - 品質85が動作しません。

mogrify圧縮されたJPEG画像を85%の品質で実行しました。

$ ls -lah Screenshot.jpg
-rw-rw-r--.  1 USER GROUP 440K May 24 12:10 Screenshot.jpg
$ mogrify -compress JPEG Screenshot.jpg -quality 85
$ ls -lah Screenshot.jpg
-rw-rw-r--.  1 USER GROUP 441K May 24 12:10 Screenshot.jpg

サイズは縮小されませんでした。ただし、Gimpで画像を開き、85%の品質で保存すると、サイズが小さくなります。

ls -lah Screenshot.jpg
-rw-rw-r--.  1 USER GROUP 135K May 24 12:11 Screenshot.jpg

ImageMagickがJPEG画像を85%に圧縮しないのはなぜですか?私はFedoraでImageMagick-6.6.4.1-15.fc14.i686を使用しています。

答え1

修飾子引数(-quality NN)の相対的な順序とファイル名がここで重要なようです。これは非常に簡単な方法で通知するのとほぼ同じです。

: cez@rhk; !ls
ls -lh Screenshot.jpg 
-rw-r--r--  1 cez  staff   1.3M  5 24 19:20 Screenshot.jpg
: cez@rhk; mogrify -verbose -monitor -compress JPEG Screenshot.jpg -quality 10
load image[Screenshot.jpg]: 1079 of 1080, 100% complete
Screenshot.jpg JPEG 1920x1080 1920x1080+0+0 8-bit DirectClass 1.335MB 0.120u 0:05.680
save image[Screenshot.jpg]: 1079 of 1080, 100% complete
Screenshot.jpg JPEG 1920x1080 1920x1080+0+0 8-bit DirectClass 1.327MB 0.240u 0:02.960
: cez@rhk; 

したがって、mogrifyを初めて実行するときに-qualityパラメータを指定します。後ろにファイル名なので、画像にどの品質指定子を適用する必要があるのか​​わかりません。

: cez@rhk;mogrify -verbose -monitor -compress JPEG -quality 85 Screenshot.jpg 
load image[Screenshot.jpg]: 1079 of 1080, 100% complete
Screenshot.jpg JPEG 1920x1080 1920x1080+0+0 8-bit DirectClass 1.341MB 0.100u 0:00.119
save image[Screenshot.jpg]: 1079 of 1080, 100% complete
Screenshot.jpg JPEG 1920x1080 1920x1080+0+0 8-bit DirectClass 459KB 0.190u 0:00.200
: cez@rhk; 

逆に品質設定を指定した場合今後 画像を圧縮して保存してファイルサイズを縮小する画像ファイル名。

答え2

同じ問題ではありませんが、長い間この問題に悩んでいました。すべてのファイルサイズがメタデータにあり、-stripコマンドを追加するとサイズが小さくなるため、サイズが縮小されないことがわかりました。

関連情報