jpegoptim 備忘録

jpegoptim って何?

この blog やら何やらでで使う写真の減量と Exif 情報の削除のためにいつも Web サービス

Compressor.io – optimize and compress your images and photos

を有り難く使わせてもらっていたのですが,複数の写真をまとめて処理するのが面倒になってきました.で,何か良いツールがないか調べてみると,

で,jpegoptim というコマンドラインツールがまさにいままで使っていた Web サービスの裏で動いているものだと書いてあるではありませんか.確かに,見つけにくいのですが,ここ を見るときちんと書いてあります.

ということで,いつも使っている MacOS と Windows に入れてみました.

MacOS に入れる

MacOS 用の Homebrew を使っているのでコマンド一発で入ります.

とするだけです.

Cygwin on Windows に入れる

残念ながらコマンド一発とはいきません.ソースコードからコンパイルします.まず,元ページは

Timo Kokkonen – Projects

です.まず,以下のどちらかで jpegoptim のソースコードを取得します.

個人的には git の方が好みです.実際にコンパイルするには libjpeg が必要です.Cygwin のパッケージだと libjpeg-devel ですね.入っていない場合は Cygwin の setup.exe (パッケージマネージャー)からインストールしておきます.

あとはいつもの通り

これで

の2ファイルが追加されます.うん,必要最低限ですね.

でも使い道に困る?

追加されるファイルを見て分かる通り,man jpegoptim でマニュアルが表示されるはずです.また,上で紹介した

にも,使い方が紹介されていますが,改めてよく考えてみると,blog なんかに載せる写真の場合,減量と Exif 除去だけでなくて,リサイズが必要なことが多い.しかし,jpegoptim はリサイズには対応しないので,これが可能なものだと,結局 ImageMagick

ImageMagick: Convert, Edit, Or Compose Bitmap Images

に行きつきます.で,ImageMagick はそれこそなんでも出来るので,ある意味,jpegoptim の上位互換です.オプションが多すぎて使い方がよくわからないコマンドではありますが,Homebrew でも Cygwin でも標準パッケージにも含まれています.まぁ,MacOS の場合は sips コマンドが初めから使えますので,jpegoptim さえ入れれば用は足りるのですが,Windows + Cygwin の場合はどう考えても ImageMagick を入れた方が早い.

なお,ImageMagick と jpegoptim の減量,Exif 除去に伴うファイルサイズの優劣は写真によりけりのようです.試しに,lossless と lossy (quality 80, 90) の両方を色々な写真で試してみましたが私には全く法則が分からないし,気にするほどの差でもありません.

で,結局結論は以下の通りとなりました.

結論

jpegoptim の –dest オプションはなかなか便利で,例えば

とすると,カレントディレクトリにある全ての jpeg ファイルから全ての Exif 情報を除去し,tmp フォルダの中に元と同じファイル名で処理済みファイルを保存してくれます.要するに元のファイルを残したままにできる.もちろん,スクリプトで何とでもなりますが1行で済むのが良い.同じことを ImageMagick 単体では出来ない(少なくとも私にはわからない).

ということで,リサイズが必要ない場合は,

のように処理して,リサイズが必要な場合は,

とする(横 1024px で縦横比を保つ前提).

はい,前半はともかくとして,後半は,jpegoptim 使う必要無いです.無理やり使っているだけです.でも,コピペして使うのでこれで良し!

スポンサーリンク
large rectangle advertisement
スポンサーリンク
large rectangle advertisement