Discourse の新しいクライアントサイド画像最適化

約5年前、クライアントサイドの画像最適化を導入し、ユーザーがサイトの制限を超える画像をアップロードできるようにしました。これにより、ユーザーのアップロード帯域幅を節約し、コミュニティのストレージスペースを節約するとともに、Discourse 内での画像体験全体をよりスムーズにしました。

これをベースに、今後の変更という新しいシステムが導入され、この機能にいくつかの新機能が追加されました。

GIF → アニメーション WEBP への変換

大規模な GIF の変換は、長らく 私たちの 関心事項 に含まれており、現在はアニメーション WebP へ変換されるようになりました。これにより、元のファイルの約半分のサイズになります。

1ueX9IP
(2.5MB GIF → 1MB WEBP)

output
(10.1MB GIF → 4.8MB WEBP、サイズ制限によりデフォルトでは Discourse で許可されません)

HEIC 変換

2020 年にサーバーサイド変換を通じて HEIC のサポートを追加しましたが、現在はコンポーザー内で直接処理できるようになり、投稿前に変換結果をユーザーが確認できます。クライアントサイドで何らかの問題が発生した場合に備え、サーバーサイド変換もフォールバックとして引き続き機能します。


(3.4MB HEIC → 650KB JPG)

JXL 変換

ブラウザの JXL サポートは準備が整っていませんが、ユーザーは JXL ファイルを Discourse にアップロードし、自動的に JPG へ変換されるため、すべてのユーザーが画像を確認できます。


(1.1MB JXL → 930KB JPG)

「いいね!」 7