MacアプリのAutomatorで画像のリサイズ・圧縮を自動化する方法
画像の容量を減らすには、画像圧縮ソフトで画質、メタデータを削除する方法がある。
また、Mac標準アプリ「プレビュー」で画像のサイズを小さくすることでも容量を減らすことができる。
もちろん、圧縮とリサイズを組み合わせるこも可能だ。
しかし、画像の容量を小さくするたびに一枚一枚をリサイズ、圧縮するのは大変な作業だと思わないだろうか。
それを解決してくれるのがMac標準のワークフロー自動化アプリの「Automator」。
Automatorで画像の圧縮・リサイズを自動化する方法を紹介する。
目次
ここで使うアプリ、ソフト
- Automator:Mac標準アプリ
- プレビュー:Mac標準アプリ
- ImageOptim:Mac専用の画像圧縮ソフト。ダウンロード、インストールが必要。無料
ImageOptimでなくても、自分で使っている圧縮ソフトがあればそれを用意する。
Automatorとは?どんなことができる?
AutomatorとはMacに標準でインストールされている自動化アプリ。
Automatorを使えば、Mac上で行う一連の作業の流れ(ワークフロー)を一つのコマンド・操作で完了できる。
そのワークフローを自作するアプリだ。
画像の圧縮だけでなく工夫次第でさまざまな操作を自動化できる。
僕はブログ用の素材画像を「素材」というフォルダに一括で格納している。データを「素材」フォルダに移動して、リサイズ・圧縮していた。
- ブログで使う画像を素材フォルダへ移動
- 圧縮した画像をリサイズ
- 移動した画像を圧縮
この作業を一枚一枚にこなしていくのは大変。
そこでAutomatorの自動化を活用し、これら3つの作業を1つワークフローとしてまとめて、1つのコマンドでこなせるようにした。また、追加で名前の変更も入れることにした。
これから、
- ファイルをフォルダへ移動
- 名前の変更
- リサイズ
- 圧縮
を1つのコマンドで行う方法を紹介する。
ワークフローの作り方
まず、Automatorを起動。
右クリックのクイッククションでできるようにしたいので、今回はクイックアクションを選ぶ。
1.移動先のフォルダの設定
フォルダから「Finder項目を移動」をドラック&ドロップで持ってくる。
オリジナルのデータを残したい場合は「Finder項目を移動」の代わりに「Finder項目をコピー」を持ってこよう。
次に保存先のフォルダを設定。一覧にない場合はその他から探してくる。
2.圧縮したとわかるようにファイル名の後に名前をつける。
「Finder項目の名前を変更」を持ってくる。
テキストを追加を選び、追加するテキスを記入。僕はサイズを調整するということで_resizeを名前の後に追加している。
別に名前を変えなくてもいいという人は、この項目は設定しなくてもいい。
3.リサイズの設定
写真から、「イメージをサイズ調整」を持ってくる
赤丸内のサイズは自分で設定可能。僕は1280にしている。
4.圧縮ソフトの設定
フォルダから「Finder項目を開く」を持ってくる。
ImageOptimを使っている場合は、開くアプリケーションでImageOptim.appを選ぶ。
別の圧縮ソフトを使っている人はそのソフトを組み込もう。
5.保存
ここまで完了したらあとは保存して完了。
command+sで保存する。名前はわかりやすい名前を選ぶ。
リサイズ・圧縮したいファイルの上で右クリックしてワークフローを選べばワークフローが自動で行われるようになる。
- ファイルをフォルダへ移動
- 名前の変更
- リサイズ
- 圧縮
が1つの操作だけでこせるので負担が低下すること間違いなし!
オプションを使えば画像ごとに作業内容を変えることもできる
先程の設定で行われる作業を具体的に書くと
- ファイルを指定したフォルダへ移動
- オリジナルの名前の後ろに_resizeをつける
- 1280にリサイズ
- アプリ内で設定された圧縮率で圧縮
という流れになる。移動先フォルダや名前、サイズ、圧縮率は固定されている。
ただ、画像によってはこれらの作業内容を少し変えたいと思うこともあるかもしれない。
そんなときはオプションをクリックして「ワークフローの実行時にアクションを表示」にチェックを入れよう。
こうすることで、途中で移動先フォルダやサイズを変えたりできるようになる。
移動〜圧縮まで一気に作業するのではなく、立ち止まってどうするのか聞いてくるようになる。1つのワークフローで柔軟に対応できるようになる。
実際にリサイズ・圧縮してみた。写真の圧縮率は95%!
先程の設定でスクリーンショットを圧縮してみたらこのような結果になった。
名前の後ろには_resizeがついており、圧縮した画像であることがわかる。大きさは設定していた1280に変わっている。
容量は4.3→2.2MBと約半分になった。
ImageOptim単体だと20%しか圧縮していないことがわかった。
リサイズと組み合わせることで圧縮率が上がることがわかったと思う。ただ、この例は圧縮率が低くてあまりよろしくないので別の例を出そう。
こちらは洗濯機の写真を圧縮した結果。
2Mあったデータが110KBにまで下がっている。
ほぼ20分の1、約95%の圧縮率を実現できた。
ImageOptim単体の圧縮率は51%
リサイズと圧縮ソフトの組み合わせで、画像によっては容量を10分の1〜20分の1まで減らせたりする。
スクリーンショットよりも写真の方が圧縮率が高いようだ。
リサイズ→圧縮の順番で
どちらの順でやれば効率がいか気になる人もいると思う。
検証してみた結果、リサイズ→圧縮の方が効率がいいことがわかった。最終的な圧縮率は同じだが作業量に違いがある。
圧縮の際はいらないメタデータを削除して容量を軽くしている。
リサイズすると「リサイズした」というメタデータが残ってしまうが、リサイズ→圧縮の順で作業することでそのデータは消すことができる。
対して、圧縮→リサイズの場合だと「リサイズした」というメタデータが残ってしまう。
比較のため「リサイズ→圧縮」と「圧縮→リサイズ」の2通りのワークフローを作り、2つのデータを用意した。
結果は以下のとおり
リサイズ→圧縮の方が100KBも小さいことがわかる。
よく見ると圧縮→リサイズの方はカラープロファイルというデータが残っていることもわかるだろう。これ以外にもいらないメタデータがあるため、100KBの差ができてしまったと考えられる。
圧縮→リサイズのデータをもう一度圧縮すると同じ117KBまで下がることがわかった。
- リサイズ→圧縮 = 117KB
- 圧縮→リサイズ→追加で圧縮 = 117KB
この結果から、リサイズ→圧縮の順ですればいいとわかる。
ワークフローの順番、操作名の変更方法
先程の例だと移動→名前の変更→リサイズ→圧縮だったが、この順番を変える方法を紹介する。
また、ワークフロー名を変える方法も合わせて紹介する。
システム環境設定からキーボードを選ぶ。
ショートカットからサービスを選び、自分で作ったワークフローを探す。
右クリックで「Automatorで開く」を選ぶとワークフロー設定画面に飛ぶので、そこで順番を変更してcommand+sで上書き保存する。
名前の変更は上と同じ操作で、「Finderに表示」を選ぶ。
serviceをクリックするとワークフローの名前が出てくるので、名前を変えてEnterを押せば完了。
自動化で快適な作業を実現しよう。