Web用にPNGを圧縮
PNG圧縮のプリセット
ウェブサイト向けにPNGを最適化: ディザリング付き128色は、ロゴ、アイコン、UIスクリーンショットにおいて元画像と見分けがつかないまま、ファイルサイズを半分以下に削減します。画像を小さくすることはCore Web Vitalsのスコアを改善する最も速い方法です。
- ファイルは端末の外に出ません
- 無料、登録不要
- 透かしなし
- 一度読み込めばオフラインでも動作します
PNG圧縮の使い方
- 1
PNGを追加
PNGファイルをページにドラッグするか、選択するか、クリップボードから貼り付けます。
- 2
色数を選択
ほとんどのグラフィックでは256色が見た目上不可逆です。より小さいファイルにするには減らします。
- 3
ダウンロード
最適化された各PNGを保存するか、バッチをZIPとしてダウンロードします。
Webページで実際にPNGが果たすべき役割
現代的なサイトでは、PNGは特定のかなり限定された役割を担うべきです: ロゴ、アイコン、UIスクリーンショット、図表、そして透明な背景が必要なものです。写真的なものはすべてJPEGかWebPに属します。画像でパフォーマンス予算を超えてしまうサイトは、写真をPNGとして配信していることが多く、どんな圧縮設定もそれを救えません — 修正はフォーマットの変更であり、パレットの変更ではありません。
本当にPNGであるべき素材については、ディザリング付き128色がほぼ普遍的な答えです。UI要素とブランドマークは小さく意図的なパレットで構築されているため、利用可能な色を半分に減らすことは情報ではなく冗長性を取り除くことになり、結果はおよそ半分のバイト数で目には同一に見えます。
SVGやWebPと比べてどこに位置するか
ベクターアートとして存在するロゴやアイコンについては、SVGが例外なくどんなラスター形式よりも優れています — 数百バイトのマークアップで、どんなズームレベルでもどんな画面密度でも鮮明で、CSSでカスタマイズ可能です。元のベクターファイルがあるならそれを使いましょう。PNGはそれがない場合や、ベクター化に耐えない効果を持つアート向けのフォールバックです。
WebPも透明度をサポートしており、同じ内容でPNGより小さいことが多く、現在のすべてのブラウザでサポートされています。それでもPNGを配信し続ける理由はブラウザ外のソフトウェアとの互換性です — メールクライアント、古めのデザインツール、そして同僚がファイルを開くのに使うかもしれないもの全般です。自分のページ内でのみレンダリングされる素材については、WebPが最良のデフォルトであり、このツールにはそのための変換ツールがあります。
- ベクターソースがある
- SVGを使いましょう。どんなラスター書き出しよりも小さく、どんな画面でも鮮明なままです。
- ブラウザ専用のラスター素材
- 透明度付きWebP。同等の忠実度でPNGより小さくなります。
- どこでも開ける必要がある
- 圧縮されたPNG。普遍的に互換性があり、それでも不可逆です。
よくある質問
PNGが不可逆でないのにどうやって圧縮できるのですか?
PNGのコンテナ自体は不可逆のままです — 変わるのはその中の画像です。異なる色数を減らすとデータがはるかに反復的になり、PNGに内蔵されたdeflate圧縮がそれをはるかにきつく詰め込みます。これはpngquantやTinyPNGが使うのと同じ手法です。
透明度は保持されますか?
はい。アルファチャンネルは完全にそのまま残され、完全に透明なピクセルはカラーパレットから除外されるため偏りを生みません。ロゴや切り抜きグラフィックはきれいなエッジを保ちます。
なぜTinyPNGよりも節約が少ないのですか?
ブラウザは32ビットPNGしか書き出せず、真の8ビットパレットPNGは書き出せないため、ネイティブの最適化ツールが達成する量のおよそ半分を実現します。その代わり、ファイルが端末から出ることは一切なく、月間の上限もありません。ロゴや平坦なグラフィックでは差は小さく、写真ではより大きくなります。
ディザリングは何をしますか?
丸め誤差を隣接ピクセルに分散させ、グラデーションが目に見える帯にならず滑らかなままにします。ファイルサイズが数パーセントポイント増える代わりに、写真やグラデーションでは有効にしておく価値があります — 平坦なグラフィックやスクリーンショットでは無効にしてください。
そもそもPNGを使うべきですか?
写真の場合は使うべきではありません — 同じ品質ならJPGやWebPの方が数倍小さくなります。PNGはロゴ、アイコン、テキストのスクリーンショット、そして透明度が必要なものに適した選択です。