ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

CとC++コミュの【質】rgb値データからbmpファイル作成

  • mixiチェック
  • このエントリーをはてなブックマークに追加
どうも、よろしくお願いします。
visual studio 2003を使っています

ポインタbmpBuffer先に、RGB値をピクセル数分格納してあるのですが、この配列をどのようにしたらbmpファイルとして表示できるのでしょうか?

bmpBufferはポインタなんで、アドレスですよね・・・RGB値を
bmpBuffer[x] = 値;x++;
していっても検討はずれなんですよね?。。
bmpBufferをRGBTRIPLE型にキャストなど、無い頭で考えているのですが、アドバイス頂ける方いらっしゃらないでしょうか?
よろしくお願いします。

以下がファイル書き出し用で利用してるプログラムです。
ファイルヘッダや情報ヘッダはデフォルトでしてくれるみたいなので、画像データの登録のところで困っています。


char filename[128];
_snprintf(filename,sizeof(filename),"result.bmp");

fh = CreateFile(filename,
GENERIC_WRITE, 0, NULL,
CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
WriteFile(fh, &bmphdr, sizeof(bmphdr), &nWritten, NULL);//ヘッダ情報
WriteFile(fh, //
&pVideoInfoHeader->bmiHeader,
sizeof(BITMAPINFOHEADER), &nWritten, NULL);
WriteFile(fh, bmpBuffer, nBufferSize, &nWritten, NULL);

コメント(2)

BMP とか DIB で検索してみるといろいろでてきますよー。
これとか。
http://www.kk.iij4u.or.jp/~kondo/bmp/
・RGBTRIPLE形のポインタbmpを新たに用意
・bmpBufferをRGBTRIPLE形にキャストして、アドレスをbmpと合わせる
 
 bmp = (RGBTRIPLE *)bmpBuffer;

・そして、RGB値をbmpの方に入れてく
・上のプログラムの実行

すると、なんとなくできました☆

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

CとC++ 更新情報

CとC++のメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング