コンテンツにスキップ

PNG vs WebP vs AVIF|画像フォーマットの選び方と変換方法

カテゴリ:画像・パフォーマンス

Web サイトの表示速度を左右する最大の要因のひとつが画像フォーマットの選択です。2026 年現在、主要な選択肢は PNG / JPEG / WebP / AVIF の 4 つ。本記事ではそれぞれの特徴・用途・ブラウザ対応状況を整理し、最適なフォーマットの選び方を解説します。

フォーマット比較表

フォーマット圧縮方式透過アニメーション画質ファイルサイズブラウザ対応
PNG可逆 (ロスレス)APNG最高 (劣化なし)全ブラウザ
JPEG非可逆 (ロッシー)品質調整可小〜中全ブラウザ
WebP可逆 / 非可逆JPEG より良いJPEG の 25-35% 小95%+
AVIF非可逆 / 可逆WebP より良いWebP の 20% 小92%+

どのフォーマットを選ぶべきか

PNG を選ぶケース

  • ロゴ・アイコン・スクリーンショットなど劣化が許されない場合
  • テキストが含まれる画像 (圧縮でボケると読みにくくなる)
  • 透過が必要でかつ IE11 対応が必要な場合 (ほぼ不要)

JPEG を選ぶケース

  • 写真・グラデーションが多い画像で 最大互換性 が必要な場合
  • メール添付や旧デバイスに配信する場合

WebP を選ぶケース (推奨)

  • Web サイトのほとんどの画像 — JPEG と比べ 25〜35% 小さくなる
  • 透過 + 圧縮の両立 (PNG の代替)
  • アニメーション (GIF の代替 — はるかに小さい)
  • ブラウザ対応率 95%+ なのでほぼ問題なし

AVIF を選ぶケース (最先端)

  • 最小ファイルサイズ を追求する場合 — WebP よりさらに 20% 小さい
  • 高品質な写真をなるべく軽くしたい場合
  • ブラウザ対応率 92%+ (Safari 16+, Chrome 85+, Firefox 93+)

実装パターン: picture 要素で出し分け

最も堅実なのは <picture> 要素で複数フォーマットを指定する方法です。ブラウザが対応する最初のソースを選びます。

<picture>
  <source srcset="image.avif" type="image/avif">
  <source srcset="image.webp" type="image/webp">
  <img src="image.jpg" alt="Description" loading="lazy">
</picture>

この方法なら AVIF 対応ブラウザは AVIF を、WebP のみ対応なら WebP を、どちらも非対応なら JPEG をロードします。

ツールで変換する

DevLab の画像フォーマット変換ツール を使えば、ブラウザだけで PNG ⇄ WebP ⇄ JPEG ⇄ AVIF の変換ができます。品質スライダーでファイルサイズと画質のバランスを確認しながら変換可能。サーバーへのアップロードも不要で、プライバシーも安心です。

関連: EXIF ビューア で撮影メタデータの確認や位置情報の削除、画像 → Base64 変換 でインラインの Data URL 生成もできます。

まとめ

  • 迷ったら WebP — バランス最良
  • さらに小さくしたいなら AVIF (picture でフォールバック)
  • 劣化不可なら PNG
  • 最大互換性が必要なら JPEG

📚 関連記事

Whois でドメイン情報を調べる方法|有効期限・ネームサーバー・登録者

Whois でわかること (登録者・有効期限・レジストラ・NS)、GDPR によるプライバシー保護の影響、ドメイン管理の実務的な使い方を解説。

2026-04-18

HTTP ステータスコード完全ガイド|よくあるエラーの原因と対処法

開発者が頻出する HTTP ステータスコード (200/301/302/400/401/403/404/413/422/429/500/502/503/504) の意味・原因・対処法を解説。301 vs 302 の SEO 影響、400 vs 422 の使い分けも。

2026-04-18

cURL コマンドを JavaScript fetch・Python requests に変換する方法|DevTools 連携

Chrome DevTools の Copy as cURL を fetch / axios / Python requests / PHP cURL / Go net/http に変換する手順を解説。主要 cURL オプション (-X / -H / -d / -F / -u / -b / -L) の変換パターン、認証トークンの扱い、注意点まで。

2026-04-16

Cookie のセキュリティフラグ完全ガイド|Secure / HttpOnly / SameSite / __Host-

Cookie のセキュリティ属性 Secure / HttpOnly / SameSite (Strict/Lax/None) / __Host- __Secure- プレフィックス / 4096 バイト制限を解説。CSRF / XSS / セッションハイジャック対策と、Laravel / Express の実装例。

2026-04-16

JWT のセキュリティベストプラクティス|alg none 攻撃 / 有効期限 / 署名検証

JWT (JSON Web Token) の代表的な脆弱性 6 種類 (alg none 攻撃 / 鍵混同 / 無期限トークン / payload への機密情報 / 失効不可 / 弱いシークレット) と対策。リフレッシュトークンパターン、失効リスト、HttpOnly Cookie 格納まで。

2026-04-16

ExcelでCSVを正しく開く・保存する方法|文字化けしないUTF-8 BOM対応

ExcelでCSVを開くと文字化けする原因と解決策。UTF-8 BOM付きCSVの作り方、Excelインポート手順、PHPとPythonでのBOM付きCSV出力コード例。macOS版Excelの注意点も解説。

2026-04-14