by ryou

[Gulp][画像圧縮] imagemin-jpegoptimは実用レベルと思う [※追記あり]

gulpで画像の圧縮を自動化したいなと思っていた所、pngに関してはpngquantでかなりいい感じに圧縮してくれるので問題ないのですが、jpegに関してはimageminで使えるjpegoptimはネット上の評価がかなり悪い模様…

ただ、自身で実際に試した所アップデートしたのか理由はわかりませんが、個人的には実用上問題ないレベルのクオリティだったので書いておきます。

検証

こちらの画像(photoshopで画質100で書きだしたもの)をjpegoptimの各画質設定で圧縮してみました。

fox_original
サイズ:393KB

画質90

fox_opt90
サイズ:114KB(元サイズ比:29%)

画質80

fox_opt80
サイズ:77KB(元サイズ比:19.6%)

画質50

fox_opt50
サイズ:44KB(元サイズ比:11.2%)

画質20

fox_opt20
サイズ:22KB(元サイズ比:5.6%)

比較用:jpegminiで圧縮したもの

fox_jpegmini
サイズ:86KB(元サイズ比:21.9%)

以上

どうでしょうか?

個人的には画質80以上なら滅茶苦茶気にする人以外は問題ないのではないかと思いました。パフォーマンスを特に気にするようなサイトなら画質50でもいいんじゃないでしょうか?(画質20は流石にダメですね)

gulpで圧縮するようにすると、手間が減りますし、画像によって画質を変えたい(例えばグラデーションがかったpngなんかは圧縮しすぎると一気に見栄えが悪くなる)場合もファイルの命名規則を決めておけば勝手に画質設定を変更するようにもできるので、これからは画像圧縮はgulpでやっていきたいですね。

追記

実際に使用していた所、どうも単色ベタ塗りの部分が圧縮時にメチャクチャ劣化する模様…画質95ならそこまで劣化しないのでとりあえずそれで様子見