CClientDC pDC(this);
CRect rectmem(0,0,210,30);
CDC dcMem; //用于缓冲作图的内存DC
CBitmap bmp; //内存中承载临时图象的位图
dcMem.CreateCompatibleDC(&pDC); //依附窗口DC创建兼容内存DC
bmp.CreateCompatibleBitmap( &pDC , rectmem.Width() , rectmem.Height() );//创建兼容位图
dcMem.SelectObject( &bmp ); //将位图选择进内存DC
dcMem.FillSolidRect( rectmem, ::GetSysColor(COLOR_3DFACE) );
COLORREF clrOld = dcMem.SetTextColor( text_color );
CFont font;
font.CreatePointFont(190,"隶书",NULL);//选择字体
CFont *Oldfont=dcMem.SelectObject(&font);//保存旧字体
dcMem.DrawText(b_str,rectmem,DT_WORDBREAK|DT_LEFT);
dcMem.SetTextColor(clrOld);
pDC.BitBlt(170,130,200,80,&dcMem,0,0,SRCCOPY);//将内存DC上的图象拷贝到前台
dcMem.SelectObject(Oldfont);
font.DeleteObject();
dcMem.DeleteDC(); //删除DC
bmp.DeleteObject(); //删除位图
本文介绍了如何使用内存设备上下文(DC)进行图形绘制,包括创建兼容的位图、选择字体、填充区域以及将绘制内容复制到前台窗口。

2万+

被折叠的 条评论
为什么被折叠?



