ファビコン
ファビコンというのは、ブラウザでタイトルの左横に表示される小さなアイコンです。
そのサイトの顔ともいうべき、ロゴです。
Figure 1. Firefox の場合
このページでは、ファビコンのファイル形式について語りたいと思います。
ファビコンは、ICOフォーマットというファイル形式で記述されます。
16ビットx16ビット、あるいは32ビットx32ビットのビットマップです。
さっそく中身を見てみましょう。
ヘッダー
ヘッダーには、ファイルタイプとアイコンの数が記述されます。
ディレクトリ
アイコン画像データの、ディレクトリともいえるインデックスの部分です。
アイコンのサイズと、データの記述箇所のオフセットが記述されます。
アイコン数だけ、繰り返されます。
ビットマップ
ビットマップのヘッダー
ビットマップ情報の詰まったヘッダーです。
ビットマップの大きさ、色情報が記述されます。
ここで、ビットマップの高さは倍になっています。
後に述べるAND/XOR操作のためです。
カラー・マップ
ビットマップでは、ファイルサイズを節約するために、マッピングを行います。
データと、対応する色を、
colorCount
だけ用意します。
bitCount
が8ビット以上であると、カラー・マップは省略されます。
XORビットマップ
画像のビットマップです。
4バイトあるいは32ビットのチャンクとして記述され、0でパディングされます。
ANDビットマップ
続くANDビットマップとは、マスキングのための情報です。
1であれば保存、0であれば消去されます。
File(s) | Description |
---|---|
ico.txt | ICOフォーマットを読むプログラム |