前提
- オンラインの画像圧縮サービスいちいち使うのめんどくさい方向けです。
- ローカルで圧縮を行うので、オフラインでも実行可能です。
- Homebrew をインストール済みの方の場合、約10分程度で設定できます。
環境
- pngquant, 2.12.0 (January 2018)
- Homebrew 1.7.6
- Automator
TL;DR
こんな感じで、特定のフォルダに画像ファイルを移動させたタイミングで、画像圧縮をしてくれます。 397KB から 100KB に圧縮されているのが分かると思います。なお、実行しているかどうかは上部の歯車みたいなアイコンで分かるようです。
手順
1. Homebrew で pngquant をインストールする
$ brew install pngquant
※ Homebrew を使わなくても、 tarファイルを直接ダウンロードすることもできるようです。
https://pngquant.org/pngquant.tar.bz2
2. Automator でフォルダアクションをつくる
Automator は、 Mac 純正のアプリケーションです。その名の通り、いろいろと自動で実行してくれるアプリです。正直そんなに使ったことありません。とにかく、以下の手順で行っていけばOKです。
なお、フォルダアクションとは、指定のフォルダに項目が追加される時に任意のスクリプトとかを実行してくれるアクションです。
-
左上の
名前
ボックスからシェルスクリプトを実行
を選択して、ダブルクリックか右のワークフローにドラッグ&ドロップしてください。
-
入力の引き渡し方法
を引数として
に変更し、以下のスクリプトをコピペしてください。実行対象とするフォルダ名はcompress
としました。名前は何でも良いと思います。
# コピペするスクリプトはこちら
$ /usr/local/bin/pngquant --ext .png --force "$@"
- 最後に
Cmd + S
でワークフローに名前をつけて保存してください。
これで設定は完了です。冒頭のように、 compress
フォルダに画像を突っ込むと自動的に圧縮されるようになります。なお便利なことに Mac の場合、 メタデータはデフォルトで削除されるようになっているようですね。
$ pngquant -h
options:
...
--strip remove optional metadata (default on Mac)
...