读书人

怎么获取BMP文件的实际数据并转换为by

发布时间: 2012-01-06 22:55:18 作者: rapoo

如何获取BMP文件的实际数据并转换为byte ?
我用
HBITMAP hBitmap = (HBITMAP) LoadImage(NULL, "c:\ico.bmp ", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE | LR_CREATEDIBSECTION | LR_DEFAULTSIZE);
加载了一个图片,接下来想将其转换为BYTE用于处理
但是Hbitmap仅仅是句柄,那么我应该如何根据句柄获取位图的实际数据呢?

刚解除图形图像处理,还请大家多多帮助,可以的话,请给出例子,不胜感激

[解决办法]
int GetDIBits(
HDC hdc, // handle to DC
HBITMAP hbmp, // handle to bitmap
UINT uStartScan, // first scan line to set
UINT cScanLines, // number of scan lines to copy
LPVOID lpvBits, // array for bitmap bits
LPBITMAPINFO lpbi, // bitmap data buffer
UINT uUsage // RGB or palette index
);

[解决办法]
不知道这是不是答案
BITMAP bm ;

pBitmap-> m_hObject = (HBITMAP) LoadImage(NULL, "c:\ico.bmp ", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE | LR_CREATEDIBSECTION | LR_DEFAULTSIZE); //加载图片

pBitmap -> GetObject(sizeof(BITMAP), &bm) ;

unsigned char *pc = new unsigned char[bm.bmheight * bm.bmWidthBytes];

GetBitmapBit(bm.bmheight * bm.bmWidthBytes, px) ;

读书人网 >VC/MFC

热点推荐