画像ファイルの圧縮

このブログでも画像ファイルを使用しているが、画像ファイルはできるだけ容量を小さくしたい。
ImageOptim は画像ファイルを手軽に軽量かできるGUIツール。
GUIツールは自動化に向かないのでこれをコマンドラインで実行したい。

ImageOptim-CLIのインストール

ImageOptim-CLI はImageOptimのコマンドライン版。

以下のようにnpmでインストールできる。

$ npm install -g imageoptim-cli

Homebrew版はApple Silicon未対応

Homebrewにも用意されているがApple Silicon対応していない。
Apple SiliconのMacでHomebrewを使ってインストールしようとすると以下のようなエラーが出る。

$ brew install imageoptim-cli

imageoptim-cli: The x86_64 architecture is required for this software.
Error: imageoptim-cli: An unsatisfied requirement failed this build.

ImageOptim-CLIで画像ファイルを最適化する

ファイルパス指定

以下のようにimageoptimコマンドに画像ファイルのパスを指定するとそのファイルを圧縮できる。

例えばimg/thumbnail.pngというファイルを圧縮する場合は以下のコマンドを実行する。

$ imageoptim img/thumbnail.png
i Running ImageOptim...
✓ img/thumbnail.png was: 357kB now: 268kB saving: 89.8kB (25.12%)
✓ TOTAL was: 357kB now: 268kB saving: 89.8kB (25.12%)
✓ Finished

imageoptim img/*.pngのようにワイルドカードを指定したり、複数ファイルを指定できる。

ディレクトリ指定

ディレクトリを指定するとそのディレクトリ以下の画像ファイルを再帰的に圧縮できる。

$ imageoptim img/
i Running ImageOptim...
✓ img/1/thumbnail.png was: 357kB now: 268kB saving: 89.8kB (25.12%)
✓ TOTAL was: 357kB now: 268kB saving: 89.8kB (25.12%)
✓ Finished