マイコン入門spacer ad
トップページに戻る(マイコン徹底入門:STM32で始めるARM/Cortex-M3組み込み開発)
「マイコン徹底入門」とは? |  「マイコン徹底入門」を読む |  ダウンロード |  筆者の自己紹介


Previous: 2.4.6.3. ファイルヘッダ

Up: 2.4.6. BMPファイルの表示

Next: 2.4.6.5. イメージデータ


マイコン徹底入門:周辺回路編:STM32のペリフェラルを活用: 2. 汎用入出力(GPIO): 2.4. カラー液晶の利用: 2.4.6. BMPファイルの表示:

2.4.6.4. 情報ヘッダ

 情報ヘッダの形式はビットマップファイルのバージョンによりいくつかあるのですが、とりあえずはINFO形式のヘッダ(表 6?22)に対応できていればよいでしょう。WindowsのペイントもINFO形式のヘッダを生成します。

表 6?22 BMPファイルの情報ヘッダの構造(INFO形式)

バイト数

データの項目

構造体メンバ名

内容

4

ヘッダサイズ

DWORD biSize

情報ヘッダの大きさ(バイト数)。

4

幅

LONG? biWidth

ビットマップの幅(画素数)。

4

高さ

LONG? biHeight

ビットマップの高さ(画素数)。

2

プレーン数

WORD? biPlanes

プレーンの枚数。BMPファイルでは必ず1になる。

2

ピクセル毎のビット数

WORD? biBitCount

1ピクセルを表現するためのビット数。24ビット(1677万色)ビットマップなら24。

4

圧縮タイプ

DWORD biCompression

圧縮方式。BMPファイルは通常非圧縮なので0が入る。

4

イメージデータサイズ

DWORD biSizeImage

ビットマップデータのサイズだが、0が格納されていることもあるので使用しない。

4

水平解像度

LONG? biXPelsPerMeter

メートル単位の水平解像度。

4

垂直解像度

LONG? biYPelsPerMeter

メートル単位の垂直解像度。

4

カラーインデックス数

DWORD biClrUsed

カラーパレットが存在する場合の色数。biBitCountに対応する最大色数を使用する場合は0。

4

重要インデックス数

DWORD biClrImportant

重要色数。最大色数すべてを重要色とする場合は0。

 本格的にBMPファイルのデコーダを作成する場合には表 6?22の各項目の情報を分析する必要があります。もっとも今回は128ドットx128ドット24ビットビットマップとして決めうちしてデコードしますので、情報ヘッダの情報は使用しないでおきます。

 先ほどの「flat.bmp」の情報ヘッダ部分は、以下のような内容・意味になっているのが確認できるはずです。

データの項目

内容

意味

ヘッダサイズ

28 00 00 00

40バイト

幅

80 00 00 00

128ピクセル

高さ

80 00 00 00

128ピクセル

プレーン数

01 00

1枚

ピクセル毎のビット数

18 00

24ビット

圧縮タイプ

00 00 00 00

非圧縮

イメージデータサイズ

00 00 00 00

このBMPファイルを作成したプログラムが非対応の模様

水平解像度

C4 0E 00 00

3780ピクセル/m

垂直解像度

C4 0E 00 00

3780ピクセル/m

カラーインデックス数

00 00 00 00

最大色数

重要インデックス数

00 00 00 00

すべてが重要色


Previous: 2.4.6.3. ファイルヘッダ

Up: 2.4.6. BMPファイルの表示

Next: 2.4.6.5. イメージデータ


このページはITと知的財産の法律情報「法務ネット」の管理人が制作・運営しています。
_Toc266801166