主题:[讨论]请教高手!回者有分,菜鸟的问题。
我在一个函数里用CFile类打开了位图的4大部分信息,然后想用SetDIBitsToDevice或者
StretchDIBits来显示,下面是我用CFile打开文件的代码:
CFile file;
BITMAPFILEHEADER BmpFileInfo;
BITMAPINFOHEADER BmpHeadInfo;
RGBQUAD RGBQuad;
BITMAPINFO BitMapInfo;
// 打开文件
file.Open(pszFileName, CFile::modeRead);//pszFileName是位图文件的路径
// 读取位图BITMAPFILEHEADER信息
file.Read(&BmpFileInfo, sizeof(BITMAPFILEHEADER));
// 读取位图BITMAPINFOHEADER信息
file.Read(&BmpHeadInfo, sizeof(BITMAPINFOHEADER));
// 读取位图RGBQUAD信息
file.Read(&RGBQuad, sizeof(RGBQUAD));
// 读取位图BITMAPINFO信息
file.Read(&BitMapInfo, sizeof(BITMAPINFO));
// 关闭文件
file.Close();
我想问的是那两个显示位图的函数怎么用啊?关键是入口参数的问题。拜托高手指点一下小弟,其实我用LoadImage+BitBlt已经能显示位图了,但是现在我想用上面提到的那两个函数中的一个来显示这个位图。
StretchDIBits来显示,下面是我用CFile打开文件的代码:
CFile file;
BITMAPFILEHEADER BmpFileInfo;
BITMAPINFOHEADER BmpHeadInfo;
RGBQUAD RGBQuad;
BITMAPINFO BitMapInfo;
// 打开文件
file.Open(pszFileName, CFile::modeRead);//pszFileName是位图文件的路径
// 读取位图BITMAPFILEHEADER信息
file.Read(&BmpFileInfo, sizeof(BITMAPFILEHEADER));
// 读取位图BITMAPINFOHEADER信息
file.Read(&BmpHeadInfo, sizeof(BITMAPINFOHEADER));
// 读取位图RGBQUAD信息
file.Read(&RGBQuad, sizeof(RGBQUAD));
// 读取位图BITMAPINFO信息
file.Read(&BitMapInfo, sizeof(BITMAPINFO));
// 关闭文件
file.Close();
我想问的是那两个显示位图的函数怎么用啊?关键是入口参数的问题。拜托高手指点一下小弟,其实我用LoadImage+BitBlt已经能显示位图了,但是现在我想用上面提到的那两个函数中的一个来显示这个位图。