|
우선 gbitmap 의 포맷을 살펴보시길 바랍니다.
bitmap 이라도 포맷을 보시면 1Bit, 8Bit, 16Bit, 32Bit 등등
포맷이 틀립니다. 님이 하신걸 보면 8bit 포맷으로 보입니다.
VCL에서 한다면
bitmap = new Graphics::TBitmap() ;
bitmap->LoadFromFile(fileName.c_str());
PaintBox1->Canvas->Draw(0,0,gbitmap);
그리고, ScanLine 사용하시기 전에
bitmap->PixelFormat 을 확인하시면 됩니다.
// 밑의 소스는 pf8bit 로 보입니다.
unsigned char *ptr;
for (int y = 0; y < gbitmap->Height; y++)
{
ptr = (unsigned char *)gbitmap->ScanLine[y];
for (int x = 0; x < gbitmap->Width; x++)
ptr[x] = (unsigned char)y;
}
|