GDI+ Конвертация картинок
От: Скородумов АС  
Дата: 23.08.02 08:47
Оценка:
Привет! Подскажите пожалуйста способ конвертации любого изображения в монохромное, используя GDI+. Нижеследующий код оставляет всю картинку без изменения. Я подозреваю, что помимо изменения палитры нужно еще изменить и PixelFormat у объекта Bitmap. Однако, как это сделать (и возможно ли вообще), не знаю.



 GLOBALHANDLE hMem;
 ColorPalette* palette;
 hMem = GlobalAlloc(GHND,(DWORD)sizeof(ColorPalette)+(sizeof(ARGB)*2));
 if(hMem)
 {
       if((palette = (ColorPalette*)GlobalLock(hMem)) != NULL)
       {
    palette->Count = nSize;
    palette->Flags = 0;
    palette->Entries[0] = Color::MakeARGB(0,0,0,0);
    palette->Entries[1] = Color::MakeARGB(0,0xFF,0xFF,0xFF);

    Bitmap* pImage = new Bitmap(L”1.bmp”);
    pImage->Setpalette(palette);
    pImage->SaveAs(L”2.bmp”);
    delete pImage ;
       
             GlobalUnlock(hMem);
             GlobalFree(hMem);
       }
}


Спасибо!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.