Я получаю байтовый массив из библиотеки и хочу сохранить его как файл в оттенках серого Tiff / 16 бит на пиксель.
Я использую этот метод для этого:
private static void CreateBitmapFromBytes(byte[] pixelValues)
{
Bitmap pic = new Bitmap(1024, 1024, PixelFormat.Format16bppGrayScale);
BitmapData picData = pic.LockBits
( new Rectangle(0, 0, pic.Width, pic.Height)
, ImageLockMode.ReadWrite
, pic.PixelFormat
);
IntPtr pixelStartAddress = picData.Scan0;
Marshal.Copy(pixelValues, 0, pixelStartAddress, pixelValues.Length);
pic.UnlockBits(picData);
pic.Save("grid.tif", ImageFormat.Tiff); //< HERE IS THE ERROR
}
И я получаю сообщение об ошибке «Произошла общая ошибка в GDI +».Проблема возникает как в Vista / 32-битной, так и в Win7 / 64-битной.Я использую .NET 4.0
РЕДАКТИРОВАТЬ:
Если я изменю ImageFormat.Tiff
на ImageFormat.Bmp
У меня нет ошибки.Но это все еще изображение TIFF, которое я хочу.