Mac 以外のローカル環境で png 画像を圧縮したい

TIL
August 13, 2022

Mac 上で png 画像を圧縮するときには、Mac アプリの ImageOptim を使っている。
CLI で扱うためのImageOptimも公開されている。
ただし、内部的には前述の ImageOptim.app を呼び出しているため、 Windows や Linux 上で画像圧縮するのに利用することはできない。
ImageOptim には Web API もあるが、会社で利用するには外部サービスへのアップロードは NG なので、これも対象外となる。

調べてみると、Google が開発している zopfli が圧縮率も高くてよさそうだった。
Ref. PNG画像のファイルサイズをなるべく小さくしたい
zopfli は C 言語で書かれていて、自分でコンパイルして利用する。
Node.js で扱うには、zopfli のバイナリファイルを呼び出す zopflipng-bin を使うのがよさそう。