• ベストアンサー

バッファサイズについて

今画像データについて勉強しています。ビットマップファイルについてなんですが大きさを240×320の場合の時 #define WSIZE 320 /*ビットマップの幅*/ #define HSIZE 240 /*ビットマップの高さ*/ #define BSIZE 1024 /*バッファサイズ*/ と書くんですがなぜBSIZE 1024 となるかわかりません。教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • ret
  • ベストアンサー率40% (8/20)
回答No.5

240 * 240 のビットマップデータ 1bit なら 32(一行)*240(高さ) 4bit なら 64(一行)*240(高さ) 8bit なら 256(一行)*240(高さ) 24bit なら 768(一行)*240(高さ) 32bit なら 1024(一行)*240(高さ) になります。 ビット数に応じてサイズは変わります。 RGBQUADも1bit, 4bit, 8bitの際は必要です。 また、1, 4, 8, 24bitの時には 1行あたりに4byte境界が発生します。 BMPのフォーマットのURLを書いておきますね

参考URL:
http://www.kk.iij4u.or.jp/~kondo/bmp/
gfgdhggddg
質問者

お礼

ありがとうございました。参考にしてやってみたいと思います☆

その他の回答 (5)

  • ret
  • ベストアンサー率40% (8/20)
回答No.6

済みません、 下の内容で 240*240 と書きましたが、 256*256 のサイズの間違いですm(_ _)m

回答No.4

> では256×256の大きさならいくつ必要ですか? # 'おんぶに抱っこ'ですか!? '少なくとも' 256 x 256 x 1画素に要するbit数 / 8 バイト必要です。

gfgdhggddg
質問者

補足

すみません・・・。そこのサイズが合わないと実行しても画像ビューアーで見れなくてどうしてもしりたくて><。

回答No.3

> どのような大きさでも1024ずつ読むのでしょうか? そんなこと誰にもわかりません。 コードを読まない限り。

gfgdhggddg
質問者

補足

そうなのです><。では256×256の大きさならいくつ必要ですか?

  • ret
  • ベストアンサー率40% (8/20)
回答No.2

まず、ビットマップのビット数は何ビットなのですか? 1,4,8,24,32のどのビット数ですか? 今回の質問内容では答えの使用がありません。 8bitで RGBQUAD * 256をunsigned charでおこなったためとも考えられなくは無いので…。 (まず、ありえないでしょうが…)

gfgdhggddg
質問者

補足

ビット数はわかりません。その参考書には240×320の大きさのビットマップのファイルから読み込むプログラムが書いており・・・。

回答No.1

そんなこと誰にもわかりません。 おそらくファイル丸ごと一気に読むのではなく、1024づつ読むつもりなのでしょう。

gfgdhggddg
質問者

補足

どのような大きさでも1024ずつ読むのでしょうか?

関連するQ&A