こういう取りまとめてくれるツールは便利ですね! Retinaディスプレイや4Kディスプレイなど高解像度のディスプレイが出回ると、その中で扱われる画像サイズも自ずと大きくなっていきます。それは致し方ないと思うのですが、何の対策もしないのはいただけません。 PNG/JPEG/GIFなど様々な画像フォーマットに応じて圧縮ライブラリがありますが、imgoはそうしたライブラリを一つにとりまとめてくれる優れものです。

imgoの使い方

imgoのヘルプは次のようになっています。

$ ./imgo --help
imgo 0.8: Images Optimizer
Git repo: https://github.com/imgo/imgo
Usage: imgo [-params] [FILE]
Options:
      -h   | --help          displays help
      -b   | --brute         brute mode, best compression, incompatible in IE6
      -png                   optimize only PNG files
      -jpg                   optimize only JPEG files
      -gif                   optimize only GIF files
      -ico                   optimize only ICO files
      -a                     abbreviated information
      -e   | --emulate       emulation mode - files are not overwritten
      -m   | --multipass     multipass- image is processed several times
      -q   | --quiet         hides the whole bar, be quiet
      -V   | --version       displays version number
      -d   | --diff          displays diff info
      -s   | --separate      PNG divided into 2 files - the first with transparency, the second without
      -bkgd                  set bKGD chunk -bkgd#ff0000, only 6 digits format
      -rt                    Remove Transparency
      -nr                    Disable recursive search in subdirectories
      -png8a                 convert PNG24+Alpha to PNG8+palette transparency
      -v   | --log           display log
      --                     end of options: only file names follow
----------
Examples:
      imgo somefile.png
      imgo somedir
      imgo -ie6 somefile.png
      imgo .

特に区別しないなら imgo ディレクトリ だけで扱えるようです。試したところ、次のようになりました。

$ ./imgo "11.44.15.png"
11.44.15.png: 402190 => 301201, Saved: 100989 bytes (25%)
---------------------------------------------------------
Result:
  Processed:       1 files of 1, total size 402190 bytes
  Profit:          100989 bytes (25%)
  Total time:      00:02:30 (HH:MM:SS)

圧縮後。特に変化は見られませんが、400KBが300KBになっています。

imgoが使っているライブラリは次の通りです。

コンピュータの性能にもよりますが、2分30秒はかなり長いです。しかし25%の削減にもつながっています。自分のPCで行っても良いですが、サーバサイドで一括変換しても良いように思います。丹念に圧縮しますので、時間はそれなりにかかりますが、その効果はダウンロードサイズの低減によるネットワークコスト減少や高速に表示されるようになるのでユーザビリティ向上など相当大きいのではないでしょうか。

imgoはBashスクリプト製のオープンソース・ソフトウェア(MIT License)です。

imgo/imgo