知道一个位图的数据,8位图和大小width和height,怎样用Onpaint显示出来?

来源:百度知道 编辑:UC知道 时间:2024/06/24 11:42:28
问archmagee,是不是还要添加什么头文件啊?我刚学这个啊
我看了FreeImage,但是pfPic这个变量包括什么信息呢?怎么样生成这个变量。
用这个m_bmp.CreateBitmap(792,482,1,8,InUserRegion1);。为什么最后显示出来不是256色位图呢?

有段代码你可以参考

CBitmap bitmap;
BITMAPINFOHEADER *lpbmi=FreeImage_GetInfoHeader(pfPic);
LPBITMAPINFO lpBmpInfo=FreeImage_GetInfo(pfPic);
LPBYTE lpBits=FreeImage_GetBits(pfPic);
HBITMAP hBitmap=CreateDIBitmap(pDC->GetSafeHdc(),lpbmi,CBM_INIT,lpBits,lpBmpInfo,DIB_RGB_COLORS);
bitmap.Attach(hBitmap);
CDC dcMem;
dcMem.CreateCompatibleDC(pDC);
CBitmap *oldbm=dcMem.SelectObject(&bitmap);

pDC->StretchBlt(ixs,iys,iw,ih,&dcMem,0,0,lpbmi->biWidth,lpbmi->biHeight,SRCCOPY);
dcMem.SelectObject(oldbm);
dcMem.DeleteDC();
bitmap.Detach();
DeleteObject(hBitmap);

不用,MFC里面都包括了,具体的细节你到“VC知识库”里面找,很多资料呢