ファイルストリームでビットマップを作成する必要があります。これまで私はこのコードを持っています:filestreamでビットマップを作成
using (FileStream bmp = File.Create(@"C:\test.bmp"))
{
BinaryWriter writer = new BinaryWriter(bmp);
int i = 0;
// writer.Write((char*)&fileheader, sizeof(fileheader));
// writer.Write((char*)&infoheader, sizeof(infoheader));
for (int rows = 0; rows < 160; rows++)
{
for (int cols = 0; cols < 112; cols++)
{
writer.Write(CamData[i]);
i++;
}
}
bmp.Close();
}
しかし、私はまだビットマップのヘッダー情報が必要です。私の問題は、私はC#でそれらを実装する方法を知らないということです。私は解像度(320 x 240)を知っていて、私のpixeldataはushort配列で与えられた16ビットのグレースケール値です。
おかげ
バイト配列は使用できません。私はUSHORTの値を持っています – h0ppel
Bitmap.LockBits()を使用し、16bpp形式を求めます。 –
私はPixelFormat.Format16bppGrayScaleを使うといつもgdi +エラーが出ます。他のピクセル形式もうまくいきます。 PixelFormat.Format24bppRgbを使用した後、私はこの結果を得る:最初の行の3回の画像[test.bmp] [1] [1]:http://i.imgur.com/Cls1e.png – h0ppel