タイトルIE5が対応したPNGファイルとはカテゴリーグラフィックス
作成日2000/3/28 16:9:40作成者新居雅行
 Internet Explorer 5のMac版がPNG(Portable Network Graphics)に対応することで、Mac環境でもPNGファイルをWebページに使うという気運が高まるだろう。Netscape CommunicatorはQuickTime Plug-inなどでPNGを参照できるようになっており、Windows版のInternet ExplorerはVer.4で対応している。細かい問題点も残っているものの、PNGファイルはもう“使ってかまわない”フォーマットになっていると言えるだろう。
 PNGは、GIFやJPEGと同様、ビットマップグラフィックスを保存するファイルフォーマットだ。GIFのようにカラーテーブルを持って256色のような形態も可能だが、16ビットのグレースケール、24ビットのフルカラー、さらには48bitのフルカラーにまで対応している。従って、GIFでは色数が制限されていたために画質の劣化が起こっていたが、PNGではその心配はいらない。一方、JPEGだとフルカラー画像は扱えるものの、ファイルサイズを小さくするには、圧縮比率を高くし、やはり画質の劣化とのバランスを考える必要があった。PNGはフルカラー画像ながら、元の画像を再現する圧縮を行うのである。単純にはGIFとJPEGのいいところを取ったようにも見えるが、このことは、後で実際にファイルを作成した結果を参照して検討してみよう。
 PNGは単に画像情報をファイルに保存するだけでなく、さまざまな情報を含めることができる。1つはαチャンネルとして、1ドット単位での透過率の情報を含めることができる。また、GIFと同じように、透過色を設定して、背景を完全に表示させることもできる。あるいは、ガンマ情報や、背景色情報、テキストの埋め込みなどの情報の付加も可能となっている。GIF同様、インターレース形式のファイルを作成することもできる。GIFのようなアニメーションについても、仕様の策定が進められている。PNGファイルの拡張子は「.png」であり、Mac OSのファイルタイプは「PNGf」となっている。インターネットメディアタイプは「image/png」となっているが、暫定的に使われている「image/x-png」も一般にはアプリケーションでサポートすることになる。
 GIFで使われているデータ圧縮法は、Unisysが取得しており、GIFファイルを作成する画像ソフトでは、Unisysに特許支払っている。最近では、Webページのアクセスカウンタで、GIF画像を合成するようなプログラムの利用にも、特許料の支払いを求めている。こうしたこともあって、GIFは使わなくてもいいようにするという意味合いも込めて、PNGというファイルフォーマットが登場してきているのである。
 さて、実際にどの程度のファイルサイズや画質になるのかを、フルカラーの写真を含むページを画面ショットにしたものを、各種のフォーマットで保存した結果を以下のページで参照できるようにした。
 figs/pngtest/
 まず、PNGでは画質の劣化が起こらないことは見ての通りだ。JPEGで圧縮率を高めると、画面ショットのような画像ではかなり見苦しくなる。一方、GIFだと256色なので、最近のMac OSやWindowsの画面だと再現性は悪い。その点、PNGなら再現性はかなりある。なお、JPEGの最高品質ならほとんど劣化は分からないくらいではある。一方、写真の部分だけを見れば、JPEGでかなり小さく圧縮した結果でも、それほどの画質の劣化は見られない。ファイルサイズが数分の1の割には、画質の劣化はわずかだといった感じだ。
 画像ファイルのサイズだが、全体的に見て、JPEGで最高品質にした場合とだいたい同じくらいのサイズであるが、条件が良ければそれよりもサイズは小さい。PNGファイルでは、「フィルタ」という機能を利用できる。これは、元の画像に対してあらかじめ演算処理を行い、その結果に対して圧縮をかけるものである。演算処理の種類によって何種類かあり、Graphic ConverterではOption設定で選択できるようになっている。フィルタを通して圧縮をかける方が、より効率的に圧縮がかかるので、ファイルサイズは小さくなる。Noneはフィルタ処理なしで、他の設定はフィルタを通す。フィルタをかけないと、JPEGの最高品質よりもファイルサイズは大きくなっているが、フィルタをかけるとより小さくなる。いくつかのフィルタがあり、おそらくは画像のタイプによって違いはでるだろうが、とりあえずはAutomaticで圧縮するのがいちばんファイルサイズは小さくできそうだ。しかしながら、ファイル保存時に、他のフィルタ処理よりも大幅に時間がかかるので注意が必要である。
 単に写真だけなら、やはりJPEGの方がより高い圧縮率にしても画質の劣化はそれほど目立たないので、JPEGで使うことが多いかもしれない。しかしながら、イラスト的な画像や画面ショットとなると、ファイルサイズは大きくなってもGIFの2倍にも満たないくらいだし、何と言っても画像の再現性が高いだけにPNGファイルを利用する意味は大きいと言えるだろう。
関連リンクhttp://www.w3.org/Graphics/PNG/