PNG ファイルとは:ロスレスで透明に対応し、思ったより大きくなりがちな形式
PNG が正確である理由、JPG より優れている場面、写真を PNG で保存すると巨大になる理由を解説。PNG はブラウザ内で変換でき、アップロード不要です。
概要
- 種類
- 画像
- 圧縮
- ロスレス(可逆)
- 拡張子
- .png
- MIME タイプ
- image/png
- 別名
- Portable Network Graphics
PNG は 1996 年に、はっきりした理由があって設計されました。GIF は LZW 圧縮を使っていましたが、LZW には特許があり、Web には無償の代わりが必要だったのです。その取り組みから生まれたものは、置き換える対象をあらゆる面で上回っていました。256 色ではなく 24 ビットカラー、透明な色 1 つではなく本物のアルファチャンネル、そして本当にロスレスな DEFLATE 圧縮。PNG をデコードすれば、入れたピクセルがいつでもそのまま返ってきます。
続きを読む
ロスレスであることがすべてで、それには良い面と悪い面があります。PNG は、スクリーンショット、図、線画、ロゴ、文字を含むものすべてに適した形式です。JPEG が周りにぼんやりしたもやを残す鋭い輪郭を、PNG は正確に再現するからです。一方、写真には向きません。隣り合うピクセルが 2 つとして一致しない画像をロスレスで記述するには、膨大なバイト数が必要になるからです。JPG なら 800 KB の写真が、PNG では 5 MB になり、しかも見た目は少しも良くなりません。
PNG が生き残っているもう 1 つの理由がアルファチャンネルです。ピクセルごとに 8 ビットの透明度を持てるので、本当の意味で柔らかい縁を表現できます。アンチエイリアスのかかった文字、ドロップシャドウ、どんな背景にも置けるロゴ。今では WebP のほうが同じピクセルをかなり効率よく圧縮できるにもかかわらず、PNG がデザイン作業の受け渡し形式であり続けているのは、この能力のためです。
知っておくとよい細かい点が 2 つあります。PNG にはパレット形式(GIF と同じく最大 256 色)とフルカラー形式があり、フラットなグラフィックならパレット形式の PNG のほうが劇的に小さくなることがあります。最適化ツールが見た目を変えずにファイルを縮められるのはそのためです。また、PNG が格納できる画像は 1 枚だけです。アニメーションは別の拡張仕様である APNG の役割で、ほとんどのツールは APNG を書き出しません。そのため、ここでアニメーション GIF を PNG に変換すると、最初のフレームだけが得られます。
PNG を他の形式に変換
他の形式を PNG に変換
PNG:よくある質問
PNG は本当にロスレスですか?
はい、文字どおりの意味で。PNG をデコードすると、エンコードしたときのピクセルがそのまま返ってきます。細部を捨てるのではなく、ZIP が文書を圧縮するのと同じように冗長な部分を見つけて圧縮しています。
なぜ PNG は JPG よりずっと大きいのですか?
すべてのピクセルについて本当の情報を保存しているからです。写真には同じ値の隣り合うピクセルがなく、ロスレスのルールではうまく圧縮できません。一方、JPG が小さいのは、まさに細部を捨てているからです。
JPG ではなく PNG を使うべきなのはどんなときですか?
スクリーンショット、文字、図、線画、ロゴ、そして透明が必要なものすべてです。また、何度も保存するつもりで編集する前にも使ってください。PNG は JPG のように劣化が積み重なりません。
JPG を PNG に変換すると画質は良くなりますか?
なりません。それ以上の劣化は止まりますが、JPG がすでに捨てたものは取り戻せません。そうしたノイズは画像の一部になっており、PNG はそれを忠実に保存します。
PNG はアニメーションに対応していますか?
別の拡張仕様である APNG を使う場合だけで、ほとんどのツールは APNG を作りません。PNG は画像を 1 枚しか格納できないので、ここでアニメーション GIF を変換すると最初のフレームが得られます。
PNG と WebP のどちらがよいですか?
WebP は同じピクセルをかなり効率よく圧縮でき、透明にも対応しているので、Web にはそちらが適しています。デザインツールとのやり取りや、どこでも開ける必要があるものには、PNG のほうが今でも安全な受け渡し形式です。
なぜ PNG を BMP に変換するのですか?
ソフトがそれを求める場合だけです。一部の古い Windows ツール、科学計測機器、マイコンのコードは、生のピクセル以外を読み込めません。BMP は非圧縮なのでファイルはずっと大きくなり、透明は失われます。
ここで PNG からファビコンを作れますか?
はい。ただし注意点が 1 つあります。出力は .ico という名前のファイルに入った PNG データです。ブラウザはこれをファビコンとして受け付けますが、本物のマルチ解像度 ICO ではないため、Windows のアプリケーションアイコンとしては使えません。