GDI绘制填充图二
来源:互联网 发布:java分布式缓存技术 编辑:程序博客网 时间:2024/06/02 05:30
一:填充区域函数
BOOL FloodFill(int x,int y, COLORREF crColor);
理解:从坐标点(x,y)出开始填充,只要没有遇到crColor颜色,就用画刷填充。直到所以边界都为crColor颜色则停止填充。
实验一(在OnPaint函数中添加代码):
CClientDC dc(this);CBrush brush1(RGB(0,0,255));CBrush brush2(RGB(0,255,0));CBrush brush3(RGB(255,0,0));CBrush brush4(RGB(0,255,255));CBrush brush5(HS_CROSS,RGB(255,0,0));CBrush* pOldBrush=dc.SelectObject(&brush1);dc.Rectangle(100,100,200,200);dc.SelectObject(brush2);dc.Rectangle(250,100,350,200);dc.SelectObject(brush3);dc.Rectangle(50,20,450,80);dc.SelectObject(brush4);dc.Ellipse(50,220,150,320);// dc.SelectObject(brush5);// dc.FloodFill(2,2,RGB(255,0,0));dc.SelectObject(pOldBrush);(未填充前的图像)运行结果为:
取消注释行后,(填充之后)运行结果为:
实验二(在OnPaint函数中添加代码):
CClientDC dc(this);CBrush brush1(RGB(255,0,0));dc.DrawDragRect(CRect(0,0,400,300),CSize(20,20),NULL,CSize(20,20),&brush1,&brush1);CBrush brush2(HS_CROSS,RGB(0,0,255));CBrush* pOldBrush=dc.SelectObject(&brush2);//dc.FloodFill(200,200,RGB(255,0,0));dc.SelectObject(pOldBrush);未填充前的运行结果:
取消注释,填充后的运行结果:
二:BOOL ExtFloodFill(int x,int y,COLORREF crColor,UINT nFillType)
当参数nFillType的值为FLOODFILLBORDER时,填充到颜色为crColor的边界,效果与FloodFill函数相同。
当参数nFillType的值为FLOODFILLSURFACE时,填充所有颜色为crColor的点,直到碰到非crColor颜色的点为止。当然点(x,y)的颜色也必须为crColor。
三:字体创建
实验源码,背景色为黑色,在OnPaint函数中添加代码:
CClientDC dc(this);LOGFONT lf;CFont font;CFont* pOldFont;for (int i=0;i<5;++i){dc.SetTextColor(RGB(50*i,50*i,250-50*i));dc.GetCurrentFont()->GetLogFont(&lf);lf.lfHeight=20+i*10;lf.lfWidth=lf.lfHeight/2;lf.lfWeight=500;lf.lfItalic=i%2;lf.lfUnderline=(i+1)%2;lf.lfStrikeOut=i%2;StrCpyW(lf.lfFaceName,L"隶书");font.CreateFontIndirectW(&lf);pOldFont=dc.SelectObject(&font);dc.SetBkMode(TRANSPARENT);dc.TextOutW(10,10+lf.lfHeight*(i),L"CFont字体输出!!!!");font.DeleteObject();}dc.SelectObject(pOldFont);运行结果:
若注释掉dc.SetBkMode(TRANSPARENT);,则运行结果为:
即会用默认的画刷(白色画刷)作为文字的背景色。
0 0
- GDI绘制填充图二
- GDI绘制填充图一
- MFC 用gdi绘制填充多边形区域
- 第五章 绘图基础 (GDI、设备环境、点线绘制、填充)
- GDI 总结二: 位图的绘制
- GDI 总结二: 位图的绘制
- GDI+图表绘制(二) 之 饼形图
- .NET : 如何利用GDI+绘制折线图
- GDI+绘制极坐标图、雷达图
- gdi文字和矩形填充
- OpenGL绘制填充五角星
- 绘制填充区域
- MFC-GDI绘制
- GDI绘制饼状图
- MFC GDI 曲线图绘制
- gdi+绘制走势图
- GDI绘制png
- GDI+绘制验证码
- 关于证书pem的生成
- uva 10006(幂取模)
- JDBC数据源和连接池
- NoSql简介
- java生成随机数
- GDI绘制填充图二
- Wireshark基本介绍和学习TCP三次握手
- UVA 993
- VS2013各版本激活密钥
- linux下Apache简介
- 01_Unity3D的输入(Input)——键盘和鼠标
- uva 138
- 栈
- 互联网时代:免费的是最贵的