GIFフォーマットについて

圧縮

CompuServeが作ったフォーマットですが、エントロピー圧縮の部分で、LZW圧縮をベースにしているので、GIF画像の圧縮と展開のためには、Unisysが持つLZW圧縮特許に対して特許料を支払う必要があります。もちろん僕はちゃんと払っているので、pag1tetoを使うのに、Unisysと契約する必要はありません。

pag1tetoを使えば、軽いGIF画像ができます。

固定パレット+誤差拡散にしてもGIFのサイズを減らすという目的にはあまり向きません。

GIFは、256色までの画像しか扱えません。ですから、それ以上の色数を含む画像をGIFに変換する場合、それは、JPEG同様、非可逆圧縮になります。単なる自然画像を扱う場合には、展開速度の問題が無ければ、JPEGを選ぶのが妥当な線だと思います。

256色でなおかつ、JPEG並みの圧縮率の圧縮フォーマットをベクトル量子化圧縮ベースで作りかけていたのですが、中断しています。

オプション

トランスペアレントGIF
インターレースGIF
アニメーションGIF

いろいろな方面から要望が多いにも関わらず、gif.htmpag1teto ver0.87ではどれにも対応していません。ImageKit4を買ったので、それで対応する予定です。あるいは、LEADTOOLS 7.0を買うかも知れません。

自分では、GIXを使っていましたが、最近では、WindowsNTServerに付属のFrontPageに付いている機能でトランスペアレント、インターレースGIFに変換しています。

 

問題点

WWWではGIFとJPEGが標準の画像フォーマットになっているにも関わらず、2つの有名なブラウザには、共に、256色環境でちゃんと表示できないという問題があります。

Netscapeの問題 NNを256環境で使う場合の注意
 

256色のUNIXワークステーションでは、ハードウェアのパレットがフォアグランドの色になってしまって、バックグラウンドの色がむちゃくちゃに変わるという問題があるみたいで、その対策が無いブラウザを使っていると1ページに256色以上あるページがちゃんと表示できないみたいです。そのせいで、変な慣習が残っています。

[HOME][挑戦]

 (C)MATSUOKA , Hajime