今回はPowerShellとバッチファイルを使って、Windowsの右クリックメニューの「送る」から、JPEG・PNGを簡単にWebPに一括変換するスクリプト「SendTo WebP Converter」を作ったのでご紹介します。
GitHubで公開中
この記事のスクリプトはGitHubで公開しているので、ダウンロードしてご自由にお使いください。
特徴
- Windowsの「送る」メニューから、JPEG・PNGをWebPへ一括変換可能
- 変換するファイルが存在するフォルダに「webp_output」フォルダを自動作成して保存するため、ファイル整理が楽
インストール方法
1. GitHubからダウンロード
- 上記のリンクでGitHubのレポジトリにアクセス
- 右上にある <> Code ▼ をクリック。
- Download ZIPをクリック
上記の手順で、スクリプトをダウンロードします。
またはgit clone
でも可です。
git clone https://github.com/Natsugure/sendto-webp-converter.git
2. install.batを実行
install.batをダブルクリックして、インストーラーバッチファイルを実行します。
実行するとsendtoフォルダにショートカットが作成され、「送る」メニューに「WebPに変換」が追加されます。
これでインストールは完了です。
実際に実行してみる
基本の使い方

ファイルを選択した状態で右クリック→「送る」→「WebPに変換」で、変換を実行します。
今回は試しにPNGファイルと、画像ではないxlsxファイルをスクリプトに渡してみます。

PNGファイルは正常に変換されてwebp_outputに保存されました。一方、xlsxはスキップされ、何も処理されていません。
大量に変換してみる
今度はPNG画像を一気に100枚変換してみます。合計サイズは145MBです。

処理にかかった時間は約19.12秒でした。
爆速とまではいかないですが、ダウンロード・解凍・移動の作業がないと考えれば実用性は高いのではないでしょうか。
(余談)作った経緯
楽に一括でWebP変換したい
個人ブログを始めたことで、読み込み速度向上のために画像をWebPに変換する機会が多くなりました。
WebPはGoogleが開発した画像圧縮形式で、JPEGとPNGと比べてそこまで画質を損なわずに大幅に軽量化できるので、Webページの画像掲載に向いているフォーマットなんですよね。
ただ、WebPに変換する作業が案外面倒でした。
Windows標準のフォトアプリやMacのギャラリーだとWebPの保存はサポートされていないため、何らかのアプリやWebサービスを利用する必要があります。
私はWebサービスにアップロードして変換することが多かったです。日本人制作のものだと、サルワカ道具箱が有名ですかね。
ただ、Webサービス経由で変換すると、
- ブラウザでWebサイトを開く
- エクスプローラからドラッグアンドドロップ
- ダウンロード
- zipファイルを解凍
という手順を踏むので「ちょっと面倒くさいな」と思ってました。
特に、お世話になっていたサルワカ道具箱だと、zipファイルの名前が「X件のWebP.zip」だったのも地味にストレスでした。
この名前だとダウンロードフォルダの中を整理しておかないと、1件のWebP(2), (3), …とフォルダがどんどん増えるんですよね。処理した日付と時間にしてくれたら整理しやすかったんですが…。
おわりに
今まであまりやってこなかったですけど、自作で細かいツールを作るのは楽しいですね。また思いついたら色々作ってみたいです。
コメント