第5章 图形操作与文本处理ppt课件.ppt

第5章 图形操作与文本处理ppt课件.ppt

ID:59208402

大小:488.50 KB

页数:42页

时间:2020-09-26

第5章 图形操作与文本处理ppt课件.ppt_第1页
第5章 图形操作与文本处理ppt课件.ppt_第2页
第5章 图形操作与文本处理ppt课件.ppt_第3页
第5章 图形操作与文本处理ppt课件.ppt_第4页
第5章 图形操作与文本处理ppt课件.ppt_第5页
资源描述:

《第5章 图形操作与文本处理ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第5章图形操作与文本处理5.1设备环境与CDC类5.1.1设备环境有关设备环境有三个直接相关的类CDC、CPaintDC、CClientDC,类CDC是所有在MFC中创建设备上下文对象的基类,CDC、CGdiObject类的继承关系如下图所示。5.1.2CDC类1.设备环境类CDC类:MFC提供几种不同的设备环境类,CDC是设备环境的基类。(1)CClientDC:只能在窗口的用户区绘图。使用CClientDC绘图时,通常先调用窗口的GetClientRect()来获取用户区的大小。(2)CPaintDC:往往在OnPaint()函数中使用。2.设备环境类CD

2、C的一些常用函数Textout():在窗口中的指定位置显示文本。函数的语法如下所示:TextOut(intx,inty,constCstring&str);在指定位置使用当前设置的文本颜色和字体来显示文本。MoveTo():用于将光标移到特定点。函数的语法如下所示:MoveTo(intx,inty);参考点是屏幕左上角。LineTo():函数可以在光标当前所在点和用户指定的坐标点之间绘制一条直线。函数的语法如下所示:LineTo(intx,inty);Rectangle():用于在指定的点之间绘制矩形。函数的语法如下所示:Rectangle(intx1,int

3、y1,intx2,inty2);该函数还用于绘制正方形。Ellipse():在窗口中绘制椭圆。函数的语法如下所示:Ellipse(intx1,inty1,intx2,inty2);5.2GDI对象的应用5.2.1CPen类在Windows中提供了画笔(pen)和画刷(brush)两种常用的画图工具。1.画笔的三个要素创建画笔用函数:CreatePen(样式、笔的宽度、颜色)。笔的样式如下表所示。笔的颜色如下表所示。2.画笔的创建步骤(1)生成画笔的一个实例(从CPen类派生)Pen。(2)初始化画笔,使用CreatePen()函数,格式如下:BOOLCrcat

4、ePen(intnPenStyle,intnWidth,COLORREFcrColor);nPenStyle:画笔的样式nWidth:画笔画线的宽度crColor:画笔的颜色。(3)装载画笔,使用SelectObject()函数,定义如下:cPen*selectObject(Cpen*pPen);pPen是画笔对象的指针。SelectObject()返回上次所装载的画笔指针,以便使用结束后恢复原来的画笔。画笔使用举例:先建立一个工程,假定工程名为SDI。OnDraw()函数代码为:5.2.2CBrush类画刷是Windows编程时用来填充控件、窗口或其他区域的

5、GDI对象。1.使用系统提供的画刷可以通过CDC成员函数SelectStockObject()选择系统己提供的画刷。在系统中提供的画刷如下表所示。2.创建画刷创建四类基本画刷:实心画刷:与实心画笔相似,可以通过COLORREF在创建画刷时设置颜色。储备画刷:Windows维护和存储的预定义画刷。阴影画刷:用预定义阴影图案来填充区域。图案画刷:用8×8的位图填充区域,如果位图是单色的,则Windows用当前文本和文本的背景颜色绘制;如果位图不是8×8的,则自动选取左上角的8×8大小的位图。提供了四种不同的构造函数:CreateSolidBrush(创建实心画刷)

6、、CreateDIBPatternBrush(创建位图画刷)、CreateHatchBrush(创建阴影画刷)、CreatePatternBrush(创建图案画刷)。在创建阴影画刷时,可以使用六种不同的样式,如下表所示。创建画刷的步骤如下:(1)使用CBrush类创建一个面刷实例。(2)生成画刷,调用函数SelectObject(),其格式如下:CBrush*SelectObject(CBrush*pBrush);其中pBrush是画刷对象的指针。SelectObject()返回上次所装载画刷的指针,应该保存该指针,以便使用结束后恢复原来的画刷,画刷的创建及应

7、用请看以下示例(假定工程名为SDI):在MFCClassWizard中的classname中选定视图类CSDIView(假定工程名为SDI),在Messages中选定消息WM_PAINT,增加成员函数OnPaint(),其代码为:5.2.3CFont类字体作为Windows的GDI对象决定了屏幕上所显示的字体的特征。该类只有一个构造函数CFont(),构造完对象后,,应该调用CreateFont、CreateFontIndirect、CreatePointFont或CteatePointFontIndirect进行初始化,以便确定字体对象的参数。CFont类封

8、装了一个字体数据结构LOGFONT,及

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。