获取位图尺寸 从 CBitmap类对象中获取位图尺寸我们可用GetBitmap()函数 。 // 变量bitmap是一个CBitmap类对象 BITMAP bm; bitmap.GetBitmap( &bm ); bmWidth = bm.bmWidth; bmHeight = bm.bmHeight; 如果你有一个 HBITMAP句柄,你可以将它附加到一个CBitmap类对象上,再用上述方法 获取尺寸 // 变量hBmp是一个HBITMAP句柄 BITMAP bm; ::GetObject( hBmp, sizeof( bm ), &bm ); bmWidth = bm.bmWidth; bmHeight = bm.bmHeight; 从BMP位图文件中获取位图尺寸可用下述方法。 CFile file; // sBMPFileName是BMP位图文件名 if( !file.Open( sBMPFileName, CFile::modeRead) ) return ; BITMAPFILEHEADER bmfHeader; // 读文件头 if (file.Read((LPSTR)&bmfHeader, sizeof(bmfHeader)) != sizeof(bmfHeader)) return ; // 确定文件类型标记’BM’ if (bmfHeader.bfType != ((WORD) (’M’ << 8) | ’B’)) return ; BITMAPINFOHEADER bmiHeader; if (file.Read((LPSTR)&bmiHeader, sizeof(bmiHeader)) != sizeof(bmiHeader)) return ; int bmWidth = bmiHeader.biWidth; int bmHeight = bmiHeader.biHeight;