Watch

Macで画像をWebPに一括変換する方法

Macで画像をWebPに一括変換する方法

MacでFinderから画像をWebPに一括変換する方法

WebPがWeb用の圧縮画像フォーマットとして人気が高まるにつれ、多くのWebワーカーがMacで大量の画像をWebPフォーマットに変換する必要に迫られています。JPGやPNGなどの画像をWebPに一括変換する機能は現時点ではMacのネイティブ機能には搭載されていませんが、Macで少し調整するだけで、Mac上であらゆる画像を簡単にWebPに一括変換できるようになります。

この記事では、Macのコマンドラインを使って画像をwebpに変換する方法について解説した以前の投稿を拡張します。HomeBrewでインストールされるGoogleのwebpツールキットと同じものを使用するため、まずHomeBrewをインストールし、次にHomebrew経由でGoogleのwebpツールをインストールして、Macでcwebpをコマンドラインユーティリティとして利用できるようにする必要があります。ただし、Automatorを使ってFinderクイックアクションを作成し、画像の圧縮とwebpへの変換を行うため、最初のインストール以降はコマンドラインを使用する必要はありません。

Macで画像をクイックアクションで一括WebP変換する方法

Automatorでクイックアクションを作成し、コマンドラインのcwebpツールを使用して画像ファイルをWebP形式に変換します。これにより、Finderのコンテキストメニューに「WebPに変換」オプションが表示されるようになります。Mac上の任意の画像ファイルまたは画像ファイルコレクションで使用できます。

  1. HomeBrew と cwebp をまだインストールしていない場合はインストールしてください (Homebrew のインストール手順はこちら、cwebp のインストール手順はこちら)
  2. MacでAutomatorを開く
  3. 新しい「クイックアクション」を作成する
  4. Automatorで新しいクイックアクションを作成する

  5. ワークフローの上部にある「ワークフローが現在のデータを受け取る」のところで「画像ファイル」を選択し、「場所」で「Finder」を選択します。
  6. webpステップ1のクイックアクションワークフローを構成する

  7. 次に、Automatorの左側のパネルを見て、ライブラリの下にある「ユーティリティ」を選択し、「シェルスクリプトを実行」を右側のワークフローパネルにドラッグアンドドロップします。
  8. 「シェルスクリプトの実行」では、「入力を渡す」を探し、「引数として」を選択します。
  9. 次に、次のコード スニペットを正確に入力します*。
  10. for FILE in "$@"
    do
    /opt/homebrew/bin/cwebp -q 85 "$FILE" -o "${FILE%.*}.webp"
    done

    クイック アクション ワークフローは次のようになります。
    MacのAutomatorでwebp変換用のシェルスクリプトを設定する

  11. ファイル > 保存からクイックアクションを保存し、「WebP に変換」のような名前を付けます (クイックアクションに付けた名前が Finder のコンテキスト メニューに表示されます)
  12. MacのFinderで画像ファイルまたは画像ファイルのコレクションを探し、右クリックして「WebPに変換」を選択します。
  13. Mac Finderで画像をWebPファイルに一括変換する

変換された webp ファイルは、webp 拡張子を持つことを除いて同じファイル名で同じディレクトリに表示されます。

新しく作成した「WebP に変換」クイックアクション ワークフローを使用すると、単一の画像ファイルを WebP に変換できます。また、複数の画像ファイルを選択した場合は、それらすべてを一括して WebP ファイルに変換することもできます。

MacのFinderクイックアクションから単一の画像をWebPに変換する

* この小さなスクリプトに関する注意事項は、特定のニーズに合わせて変更することができます。

  • cwebpへのパスはHomebrewでインストールされたcwebp用に設定されています。cwebpを手動でインストールした場合は、おそらく/usr/binにあるので、それに応じてパスを調整する必要があります。
  • -q 品質フラグは現在 85 に設定されていますが、1 ~ 100 の間で設定できます (値を大きくすると高品質の画像が生成されますが、圧縮率は低くなります)

繰り返しになりますが、これを使用して、単一の webp ファイルの変換、または多数の画像ファイルの webp 形式へのバッチ変換を行うことができます。

MacでFinderのクイックアクションから画像をWebPに一括変換する

webpの人気が高まっていること、そしてmacOSが現在WebPをJPGに変換し、WebP画像ファイルを開いてプレビューでJPEGとして保存する機能(さらにはプレビューを使ってwebpをjpegに一括変換する機能も)をネイティブで提供していることを考えると、macOSの将来のバージョンでは逆方向、つまりWebPへの保存とWebPへの直接変換もサポートされるようになると予想するのは妥当でしょう。そうなれば、このクイックアクションは不要になり、HomeBrewからcwebpを手動でインストールする必要もなくなりますが、当面は必要です。

WebP とは、Google が開発した、効率性と汎用性を重視した画像ファイル形式のことです。静止画とアニメーションに対応し、非可逆圧縮と可逆圧縮の両方をサポートしています。ここで画像を WebP に一括変換するために使用している cwebp ツールは、Google の公式 WebP エンコーダです。詳細については、こちらをご覧ください。バックエンドでの変換と圧縮に使用しているシェル スクリプトは、Jay Holtslander が作成したスクリプトを改変したものです。最後に、Homebrew は Mac 用の非常に人気のあるコマンドライン パッケージ マネージャーで、Mac ユーザーはこれを使用することで、ここで使用している cwebp を含む数千ものコマンドライン ツールやユーティリティを、自分でコンパイルすることなく簡単にインストールできます。

Mac で画像ファイルを WebP に一括変換する別の推奨方法、または代替アプローチがある場合は、下のコメント欄で共有してください。