CMFCImageEditorDialog(CBitmap* pBitmap, CWnd* pParent = NULL, int nBitsPixel = -1); // standard constructor
pBitmap 传入要修改位图的指针
处理完毕之后会返回该位图指针,通过Dc绘制可以看出其改变之后的效果
*/
//第一种方法:
CBitmap btm;
btm.LoadBitmap(IDB_BITMAP1);
HBITMAP hBmpCopy = (HBITMAP) ::CopyImage(btm.GetSafeHandle(), IMAGE_BITMAP, 0, 0, 0);
/*注意位图不要太大哦,太大了就显示不出来了*/
CMFCImageEditorDialog dlg(CBitmap::FromHandle(hBmpCopy), this);
dlg.DoModal();
CClientDC dc(this);
CDC memDc;
memDc.CreateCompatibleDC(&dc);
memDc.SelectObject(CBitmap::FromHandle(hBmpCopy)); //绘制修改之后的图像
dc.BitBlt(0,0,100,200,&memDc,0,0,SRCCOPY);*/
//-------------------------------------------------------------------------
//第二种方法:
CBitmap btm;
btm.LoadBitmap(IDB_BITMAP1);
CMFCImageEditorDialog dlg(&btm, this);
dlg.DoModal();
CClientDC dc(this);
CDC memDc;
memDc.CreateCompatibleDC(&dc);
memDc.SelectObject(&btm);//将修改之后的图像选入DC 用于绘制
dc.BitBlt(0,0,100,200,&memDc,0,0,SRCCOPY);
接下来看看效果吧!
修改位图前后效果对比如下图: