こんにちは。色々な作業をコマンドでできないか模索中のハルです。 コマンドでpng画像を圧縮! pngquantの便利な使い方
前回、png画像の圧縮をコマンドで行う方法を紹介しました。
今回は、シンプルなjpg画像の圧縮コマンド「guetzli」を紹介したいと思います。
guetzliとは
Googleが開発した高品質で画像圧縮するJPEGエンコーダーで、とてもシンプルなコマンド実行でjpg画像圧縮が行えます。
機能が最低限に絞られており、とても使い勝手のいいところが私は気に入っています。
インストール方法
この記事ではMacでのインストール方法のみ紹介させていただきます。
Macの場合、homebrewで簡単にインストールが可能です。
brew install guetzli
使い方
基本的な使い方
$ guetzli original.jpg output.jpg
第一引数(例: original.jpg)に元となる画像を指定します。
第二引数(例: output.jpg)に出力後のパス・画像名を指定します。
$ guetzli original.png output.jpg
このように、第一引数はjpgの他にpngも指定ができますが書き出しはjpgのみになります。
注意は透過部分は黒に変換されます。
『–quality 数値』
$ guetzli --quality 100 original.jpg output.jpg
『–quality』 に数値を指定することで品質を指定できます。
数値は84以上で指定する必要があります。
『–verbose』
$ guetzli --verbose original.jpg output.jpg
『–verbose』でエンコード状況を出力することができます。
使い方はかなりシンプルで難しくありません。触ってみれば、すぐに使えるようになるはずです。
すべて(複数)の画像をコマンドで処理したい場合
複数指定は用意されていないため、私はシェルスクリプトでやる方法で下記のように実行しています。
$ for F in ./**/*.jpg; do guetzli --quality 95 --verbose $F ./$F; done
すべてのjpgファイルを対象に、同じファイル名でguetzliの処理を実行しています。
さらに、コマンドをalias登録
私は、このような長いコマンドはalias設定をして短いコマンドで実行しています。
『.bashrc』ファイルに、
alias guetzli-all='for F in ./**/*.jpg; do guetzli --quality 95 --verbose $F ./$F; done'
上記のように登録しておけば、ひとまず圧縮をかけたいときに、
$ guetzli-all
と、だけコマンド実行すれば圧縮処理を開始できるので簡単です(処理に時間はかかりますが……)。
まとめ
いかがでしたか? 前回の記事と合わせて、これでpng・jpg画像の圧縮がコマンドで実行できるようになりました! GUIツールから簡単にコマンドで実行の方法に切り替えられるものがあったら、どんどん切り替えていきたいですね。それでは!
LIGはWebサイト制作を支援しています。ご興味のある方は事業ぺージをぜひご覧ください。