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


Previous: 2.4.6.2. ヘッダの構造

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

Next: 2.4.6.4. 情報ヘッダ


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

2.4.6.3. ファイルヘッダ

 ファイルヘッダの構造は 6?21のようになっています。

6?21 BMPファイルのファイルヘッダの構造

バイト数

データの項目

構造体メンバ名

内容

2

ファイルタイプ

WORD? bfType

BMPファイルであることを示す。1バイト目は B (0x42)」、2バイト目は M (0x4D)

4

ファイルサイズ

DWORD bfSize

BMPファイル全体のファイルサイズ。

2

予約

WORD? bfReserved1

予約値。0とする。

2

予約

WORD? bfReserved2

予約値。0とする。

4

イメージデータオフセット

DWORD bfOffBits

ファイルの先頭から何バイト目からビットマップデータがはじまるかをします

 Windowsプログラミングの環境(Win32 SDK)の場合、用意されているインクルードファイルで、ファイルヘッダがBITMAPFILEHEADER構造体として定義されていて、 6?21の構造体メンバ名が付けられています。本書でもこの定義を利用してプログラミングすることにします。Win32環境ではLONG32ビット符号付き整数、WORD16ビット符号無し整数、DWORD32ビット符号無し整数を意味します。

 BMPヘッダ内の数値はすべてリトルエンディアンですので、上位の桁のバイトが右側から格納されます。たとえば「36 C0 00 00」は0x00 00 0C 36を意味します。

 ファイルタイプを利用すると、ファイルを開いたあとに、開いたファイルが本当にBMPファイルかどうかを確認できます。イメージデータオフセットを利用すると、ビットマップデータの実際のデータ位置を確認できますから、データの読み出しが簡単になります。

6?71 flat.bmpのヘッダ部分

***flatbmpheader***

 サンプルプログラムのフォルダに入っている「flat.bmp」をバイナリエディタで見ると( 6?71)、ファイルヘッダ部分の内容を確認できます。意味は以下の通りです。

データの項目

データ内容

意味

ファイルタイプ

42 4D

BMPファイル

ファイルサイズ

36 C0 00 00

49206バイト

予約

00 00

-

予約

00 00

-

イメージデータオフセット

36 00 00 00

54バイト


Previous: 2.4.6.2. ヘッダの構造

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

Next: 2.4.6.4. 情報ヘッダ


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