MENU

【Macユーザー必見】右クリックから画像をwebpに瞬時に変換しよう!

内容はタイトルのとおりで、クイックアクションを使ってwebpに変換するコマンドを作成するというもの。要はこれを作る。

これは普通に便利だよ。では以下、ChatGPT-4によるテンション高めの記事本文。

目次

イントロ

こんにちは、今日はMacの便利な機能であるクイックアクションを使って、画像をwebp形式に変換する方法をご紹介します。この方法を使えば、画像ファイルを右クリックするだけで簡単にwebp形式に変換することができます。

手順は以下の通りです。

準備

今回の作業のための準備をしましょう。いくつかのツールを入れる必要があります。

Homebrewのインストール

まずはHomebrewをインストールします。HomebrewはMacでソフトウェアを簡単に管理するためのパッケージ管理システムです。既にインストールしてある方はこの手順をスキップしてください。ターミナルを開き、以下のコマンドを実行します。

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

libwebpのインストール

次に、Homebrewを使ってlibwebpをインストールします。libwebpはGoogleが開発した画像形式であるwebpへの変換ツールです。ターミナルで以下のコマンドを実行します。

brew install webp

クイックアクションの作成

Automatorを開き、「新規ドキュメント」を作成します。「ドキュメントの種類」の選択画面が表示されたら、「クイックアクション」を選択します。選択したら、下記のような設定をしますので、手順を説明します。

「ワークフローが受け取る現在の項目」の項目で「イメージファイル」を選択し、さらにその右隣の「検索対象」のドロップダウンから「Finder」を選択します。

左側のパネルから「ユーティリティ」カテゴリを開き、「シェルスクリプトを実行」を右側の空白領域にドラッグアンドドロップします。

シェルスクリプトアクションに以下のコマンドを入力します(「入力の引き渡し方法」は「引数として」に設定)。

for f in "$@"
do
  /usr/local/bin/cwebp "$f" -o "${f%.*}.webp"
done

著者注記: あらかじめ which cwebp でcwebpのパスを調べておく。 /opt/homebrew/bin/cwebpにする必要があるかも。

クイックアクションの実行

メニューバーの「ファイル」から「保存」を選び、クイックアクションに名前をつけて保存します。この名前がコマンドの名前になるため、「webpに変換」などのわかりやすい名前にしましょう。

これで準備は完了です。Finderから画像ファイルを右クリックすると、コンテクストメニューの「クイックアクション」の中に新しく作成したアクションが表示されます。選択すると、選択した画像ファイルがwebp形式に変換され、元の画像と同じ場所に保存されます。

注意点、画質と元画像の削除について

元画像の削除

注意点として、このコマンドは元の画像ファイルを保持しつつ新しいwebpファイルを作成します。元の画像を削除したい場合は、上記のシェルスクリプトにrm "$f"コマンドを追加します。これにより、変換後のwebpファイルが作成された後に元の画像が削除されます。

以下に修正したコードを示します。

for f in "$@"
do
  /usr/local/bin/cwebp "$f" -o "${f%.*}.webp"
  rm "$f"
done

このコードは元のファイルを完全に削除するため、誤って重要なファイルを削除しないように十分注意してください。実行前にバックアップを取るなど、データの安全対策を忘れずに行ってください。

画像の品質

また、出力されるwebp画像の品質はデフォルトの設定(75%)になります。品質設定を変更するには、上記のcwebpコマンドに-qオプションを追加します(例:-q 90)。

以上で、Macのクイックアクションを使って画像を簡単にwebpに変換する方法のご紹介を終えます。ぜひ試してみてください。

寸評

有能。シェルスクリプトを交えつつAutomatorを使った完全なガイド。これはGoogle検索だと中々出てこない。

以下のような質問をした。

  1. Macのクイックアクションで、画像をwebpに変換するアクションを作成したい!
  2. 素晴らしい。完璧だ。UIは日本語のほうがよかったが、そこは僕が補足しよう。 クイックアクションで画像ファイルを右クリックから手軽にwebpに変換できるようにする方法について、ブログ記事としてまとめてくれ
  3. 元の画像を削除したい場合のコードについても書いたほうがいいな。

解説のUIが思いっきり英語だったので、僕のほうで直すといったところ、なんだか日本語化しようと頑張っていたが、結果間違っていたのでそこは僕が修正した。相変わらずディテールを間違えるChatGPT。こうして人間の仕事は微調整になっていくのか……。

目次