RubyでのWebP変換のやり方


こんにちは、GMOアドマーケティングのR.Yです。

今回はRubyでのWebP変換をしていきます。JPEGやPNGの画像をWebPに変換するだけでだいぶ容量が軽くなったのと、意外と変換が簡単にできたのでその方法を書いていこうと思います。

環境

  • MacBook Pro 11.6.2 (Apple M1)
  • Ruby 3.1.1
  • rmagick4.2.4 

準備

早速rmagickをインストールしていく訳ですが、何もせずにgem installを行うとエラーがでます。   rmagickを使用する場合はimagemagick@6が必要なのでそちらを先にインストールしてパスを通します。 これで準備OK

WebP変換

WebP変換のやり方は簡単。 変換したい画像を用意したら以下を実行 Magick::Image.readで変換したい画像を読み込み、その後拡張子を.webpに変更して書き出すとWebP変換されます。 簡単ですね!!!!

画像比較

今回は3つの画像を用意しました。※本記事の以降の画像はすべて当社が作成したものです

画像①

画像②

画像③

詳細比較

画像説明サイズ変換前変換後
画像①テスト用画像1176×65943,518 byte7,706 byte
画像②熱海の写真その13024×40322,040,929 byte1,653,104 byte
画像③熱海の写真その24032×30241,008,748 byte665,790 byte

見た目比較

見た目に変化なし!!シンプルな画像の方がより多く容量削減できていますね!風景写真に関しても見た目変わらず約30%ほど削減できていました!

最後に

今回はRubyでのWebP変換のやり方について書いてみました。

見た目がほぼ変わらずに容量が減らせるということで、

大量の画像データを扱うサービスなどではとても役に立つのではないかと感じました。


参考にさせていただいたサイト↓
【Qiita】RMagickを導入して、既存の画像ファイルを別のフォーマットに変換する