lorsque je crée une image bitmap comme ceci:.bmp n'est pas une bitmap Windows?
var testImage = new Bitmap(320, 240);
var testDataLock = testImage.LockBits(new Rectangle(new Point(), testImage.Size),
System.Drawing.Imaging.ImageLockMode.WriteOnly, PixelFormat.Format24bppRgb);
unsafe
{
var aaa = CamData.ToArray();
UInt32 lOffset = 0;
UInt32 lPos = 0;
byte* lDst = (byte*)testDataLock.Scan0;
byte bitshift = 8;
fixed (UInt16* lSrc = aaa)
{
while (lOffset < testImage.Width * testImage.Height)
{
lDst[lPos] = (byte)(lSrc[lOffset] >> bitshift);
lDst[lPos + 1] = lDst[lPos];
lDst[lPos + 2] = lDst[lPos];
lOffset++;
lPos += 3;
// take care of the padding in the destination bitmap
if ((lOffset % testImage.Width) == 0)
lPos += (UInt32)testDataLock.Stride - (uint)(testImage.Width * 3);
}
}
}
testImage.UnlockBits(testDataLock);
testImage.Save(@"H:\Test.bmp");
J'obtiens toujours une erreur en essayant d'ouvrir ce fichier avec une visualisation lib:
Unknown file type! H:\test.bmp is not a Windows BMP file!
mais dans les fenêtres, je peux ouvrir le fichier avec le spectateur etc ... il n'y a pas de problèmes est-ce que quelqu'un sait pourquoi je reçois cette erreur?
grâce
Ce. Je ne suis pas sûr du format qu'il choisirait par défaut, mais il est toujours bon d'être explicite. –
ooh si facile :), merci :) – h0ppel