Народ,
Может кто подскажет — как в .Net создать свою палитру?
Мне нужна картинка 8 bpp,grayscale
A в структуре System::Drawing::ImagingPixelFormat такого нет
Пробовал совать ей Format8bppIndexed, но картинка получается с другой палитрой, что вполне объяснимо
Подозреваю, что нужно как-то создать\задать System::Drawing::ColorPalette. Как? Там все свойства Get
Или, можно ли создать объект System::Drawing::Bitmap используя что-то а-ля BITMAPINFO?
Если да, то как? Чего подключить?
Извините за возможно тупые вопросы, но нужно разобраться с .Net и нужно сделать это быстро, так как иначе
Код такой:
pBoard->GrabImage(768,576,0,0,pimage); // заполняет pimage(unsigned char* данными)
CImage* pImage = new CImage(pimage,SDimensions(768,576)); //мой класс для работы с картинками, win32
pImage->SaveImage("savedfromunmngd.bmp");///coхраняет на диск, все отлично
Image * pImage1= new Bitmap(768,576,768*sizeof(unsigned char),PixelFormat::Format8bppIndexed,pimage);
pImage1->Save("fromdata.bmp"); /// сохраняет, явно кривая палитра
Image *pImage3 = new Bitmap("savedfromunmngd.bmp");
pImage3->Save("managed.bmp"); //сохраняет нормально
Если кто знает, и может поделится — спасибо, с меня бутылка "Растишки"