一、利用BMP文件格式读取
HANDLE hFile;
BITMAPFILEHEADER bmpfheader;
BITMAPINFOHEADER bmpiheader;
DWORD nBytesRead;
hFile=CreateFile(filename,GENERIC_READ,FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
ReadFile(hFile,&bmpfheader,sizeof(BITMAPFILEHEADER),&nBytesRead,NULL);
ReadFile(hFile,&bmpiheader,sizeof(BITMAPINFOHEADER),&nBytesRead,NULL);
CloseHandle(hFile);
其中,bmpiheader.biWidth为图片的宽度,bmpiheader.biHeight为图片的高度
参考资料:BMP文件格式分析(http://asp.6to23.com/iseesoft/devdoc/imgdoc/bmp_fileformat.htm)
二、利用GDI中的GetObject函数
//m_hdc为当前窗体的DC句柄。
HDC hdc;
BITMAP bmp;
hdc=CreateCompatibleDC(m_hdc);
hPic=(HBITMAP)LoadImage(NULL,filename,IMAGE_BITMAP,0,0,LR_LOADFROMFILE);
GetObject(hPic,sizeof(BITMAP),&bmp);
其中bmp.bmWidth为图片宽度,bmp.bmHeight为图片高度
参考资料:《Visual C++游戏编程基础》,荣钦科技