获取位图信息
BITMAP bm; HBITMAP hBmp = NULL; CString str = _T("D:\\1.bmp"); hBmp = (HBITMAP)::LoadImage(NULL, str, IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE); int n=::GetObject(hBmp, sizeof(BITMAP), (PSTR)&bm);//获取对象信息 /* 参数1:HGDIOBJ hgdiobj 图形对象的句柄 参数2:int cbBuffer 将写入到缓冲区中的图形对象信息的字节数 参数3:LPVOID lpvObject 指向接收图形对象信息的缓冲区的指针 返回值:当函数执行成功且参数lpvObject为NULL时,返回值是保存获取的信息的缓冲区需要的字节数 当函数执行成功且参数lpvObject是有效地指针时,返回值是存储到缓冲区中的数据的字节数 当函数执行失败时,返回值是0 */ int nWidth = bm.bmWidth;//位图宽度 int nHeight = bm.bmHeight;//位图高度 str.Format(_T("nWidth=%d\r\n"), nWidth); ::OutputDebugString(str); str.Format(_T("nHeight=%d\r\n"), nHeight); ::OutputDebugString(str);
标签:MFC,int,bm,信息,GetObject,获取,str,缓冲区,返回值 From: https://www.cnblogs.com/liming19680104/p/17324031.html