有了位图句柄,如何在位图上写字?
- C/C++ code
HBITMAP hBitmap; //获得指向静态控件的指针 CStatic *pStatic=(CStatic *)GetDlgItem(IDC_PHOTO); //获得位图句柄 hBitmap = (HBITMAP)LoadImage( AfxGetInstanceHandle(), MAKEINTRESOURCE(IDB_BITMAP1), IMAGE_BITMAP, 0, 0, LR_LOADMAP3DCOLORS); //设置静态控件的样式,使其可以使用位图,并试位标显示使居中 pStatic->ModifyStyle(0xF,SS_BITMAP|SS_CENTERIMAGE); //这里该如何操作hBitmap,在其上写字,给下面的SetBitmap()用? //设置静态控件显示位图 pStatic->SetBitmap(hBitmap);
谢谢指教 ^_^
[解决办法]
将位图先BitBlt到一个内存DC中去,然后在这个DC中用TextOut输出文字就行了。
[解决办法]
- C/C++ code
CDC dc;dc.CreateDC(_T("DISPLAY"), NULL, NULL, NULL); //创建dc设备CBitmap *pOldBitmap = dc.SelectObject(CBitmap::FromHandle(hBitmap)); //选人位图dc.TextOut …… //使用dc设备绘图写字dc.SelectObject(pOldBitmap);//恢复位图dc.DeleteDC();//删除dc设备
[解决办法]
[解决办法]