Russian Belarusian English German Japanese Ukrainian

Rashka.studio - игры и приложения для Android! Заходи, ждём тебя =)

  • Главная
  • FAQ
  • Как преобразовать цветное изображение в серое?

Как преобразовать цветное изображение в серое?

CuBook05

Чтобы преобразовать цветное изображение с серое (черно-белое) можно воспользоваться следующей функцией:
void SetBitmapPaletteToGreyScale(Graphics::TBitmap *pBitmap)
{
LOGPALETTE *pal;
HPALETTE hpal;
int i;
int PaletteSize;
pBitmap->PixelFormat = pf8bit;
pal = NULL;
PaletteSize = sizeof(TLogPalette) + (sizeof(TPaletteEntry) * 255);
pal = (LOGPALETTE *) malloc(PaletteSize);
pal->palVersion = 0x300;
pal->palNumEntries = 256;
for (i = 0 ; i <= 255; i++)
  {
  pal->palPalEntry[i].peRed = i;
  pal->palPalEntry[i].peGreen = i;
  pal->palPalEntry[i].peBlue = i;
  pal->palPalEntry[i].peFlags = PC_NOCOLLAPSE;
  }
hpal = CreatePalette(pal);
if(hpal != 0) pBitmap->Palette = hpal;
free(pal);
}
Если заметили ошибку, выделите фрагмент текста и нажмите Ctrl+Enter

Добавить комментарий