C#程序设计实用教程 教学课件 ppt 作者 张晓蕾 第5章-图形与动画

上传人:E**** 文档编号:89368706 上传时间:2019-05-24 格式:PPT 页数:51 大小:627KB
返回 下载 相关 举报
C#程序设计实用教程 教学课件 ppt 作者  张晓蕾 第5章-图形与动画_第1页
第1页 / 共51页
C#程序设计实用教程 教学课件 ppt 作者  张晓蕾 第5章-图形与动画_第2页
第2页 / 共51页
C#程序设计实用教程 教学课件 ppt 作者  张晓蕾 第5章-图形与动画_第3页
第3页 / 共51页
C#程序设计实用教程 教学课件 ppt 作者  张晓蕾 第5章-图形与动画_第4页
第4页 / 共51页
C#程序设计实用教程 教学课件 ppt 作者  张晓蕾 第5章-图形与动画_第5页
第5页 / 共51页
点击查看更多>>
资源描述

《C#程序设计实用教程 教学课件 ppt 作者 张晓蕾 第5章-图形与动画》由会员分享,可在线阅读,更多相关《C#程序设计实用教程 教学课件 ppt 作者 张晓蕾 第5章-图形与动画(51页珍藏版)》请在金锄头文库上搜索。

1、,第5章 图形与动画,5.1 GDI+入门基础,5.1.1 图形绘制基础 为了能够快速开发图形应用程序,方便地在屏幕和打印机上绘制图形与文本,C#为用户提供了GDI+。,通过GDI+所提供的对象工具,程序设计者可以方便地绘制矢量图形、位图图像和文字。GDI+中包括了绘图所需的画笔(Pen)、画刷(Brush)、图标(Icon)、图像(Image)、字体(Font)、Graphics等多种绘图对象。,GDI+中最常用的组件都位于System.Drawing和System.Drawing.Drawing2D命名空间,其层次结构如图5-1-1所示。,图5-1-1在System.Drawing命名空间

2、的GDI+组件,5.1.2 图形坐标系统 图形坐标系统指出了图形处理中对每个点的标识方案,在C# 程序中,默认以绘图对象的左上角为坐标系统的原点(0,0),以水平向右为X轴正方向,垂直向下为Y轴正方向,如图5-1-2所示。,图5-1-2 图形坐标系统,5.1.3 辅助绘图对象 在绘图处理中,除了坐标系统外,还有一些对象是绘图时必须使用到的,包括颜色控制对象Color和绘图位置控制对象Point、Rectangle和Size等。,1绘图颜色的设置 2绘图位置的控制,(1)Point (2)Size (3)Rectangle,此外,PointF、RectangleF和SizeF为Point、Rec

3、tangle和Size等对象所对应的浮点型类型,这些结构对象的用法与Point、Rectangle和Size相同,只不过它们可以接受浮点型(float)参数,而Point、Rectangle和Size只能接受整型(int)参数。,5.1.4 图形对象Graphics 在C#中,图形的绘制通过获取对象(如窗体、控件)所关联的图形对象Graphics,然后在Graphics对象上进行的。,图形对象Graphics必须与一个具体的“图形设备上下文”相关联,“图形设备上下文”代表一个绘图表面,它通常是一个控件或窗体的表面。,1.获取对象的Graphics 2Graphics的常用绘图方法,5.1.5

4、画笔(Pen)与画刷(Brush) 画笔(Pen)是GDI+中用于绘制各种线条和封闭图形边框的工具,而画刷(Brush)则用于绘制封闭图形的填充部分。,1画笔 (1)创建画笔 (2)画笔属性,2画刷 画刷用于绘制封闭图形的内部填充部分。与前面的Pen不同,画刷类Brush是一个抽象类,即不能直接使用Brush来进行图形填充,只能使用Brush的派生类对象来进行图形的填充。,Brush有多个派生类,可用于创建图案画刷、单色画刷、图形画刷、渐变画刷等,具体内容如下。,(1)图案画刷HatchBrush (2)单色画刷SolidBrush (3)图像画刷TextureBrush (4)渐变画刷Lin

5、earGradientBrush,【案例36】绘制基本图形 本例中,将通过图形对象Graphics,在窗体上绘制出几种常见基本的图形,效果如图5-1-8所示。,图5-1-8绘制基本图形,在本例实现过程中,将学习GDI+中如何通过Graphics绘制基本图形。案例实现过程如下。,1创建项目 2界面设计 3添加事件处理程序,【案例37】函数图案 使用图形对象的绘图方法除了可以绘制简单图形外,还可以通过对程序算法进行设计,绘制出复杂的图案,本案中的函数图案就是一个利用程序算法进行图案绘制的例子。程序运行效果如图5-1-9所示。,图5-1-9函数图案,在本例实现过程中,将学习如何通过程序设计用GDI+

6、绘制复杂图形。案例实现过程如下。,1创建项目 2界面设计 3添加事件处理程序,【案例38】渐变图形 本案例中将演示图形的渐变填充,案例效果如图5-1-10所示。,图5-1-10 渐变图形,在本例实现过程中,将学习渐变画刷的应用。案例实现过程如下。,1创建项目 2界面设计 3添加事件处理程序,5.2 图像处理,5.2.1 Image类与Bitmap类 1Image类与Bitmap类的常用方法与属性 2Bitmap类的构造,Bitmap类派生于Image类,它用于处理由图形图像及其属性的像素数据组成的位图,包括BMP、Jpeg、GIF、PNG等格式。,此外,Bitmap类的构造函数也可以用来构造一

7、个图形对象,使用格式如下: Bitmap (Image) Bitmap (String) Bitmap (Image, width, height),5.2.2 图形绘制与变换 1图形绘制 图形绘制可以通过调用图形对象Graphics的DrawImage方法来进行,使用格式如下:,DrawImage(Image, Point) DrawImage(Image, Rectangle) DrawImage(Image, Integer, Integer, Integer, Integer),2图形变换 (1)ResetTransform方法 (2)RotateTransform (3)Transf

8、ormPoints (4)TranslateClip,(5)Restore方法 (6)ScaleTransform,Bitmap类的RotateFlip方法也可实现对图像进行旋转或翻转。,【案例39】图像变换 本案例中,将设计一个可以对图像进行变换的程序,效果如图5-2-1所示。,图5-2-1 图像变换,在本例实现过程中,将学习图像显示和变换处理的方法。案例实现过程如下。,1创建项目 2界面设计 3添加事件处理程序,5.3 图形文字,5.3.1 Font类 在图形处理中,文本也是作为图形来处理的,这使用得它不同于对象的Text属性所设置的文本对象。在图形处理中,可以使用众多的方法来操作文本,使

9、其具有特殊的效果。,Font类用于定义特定的文本格式,包括字体、字号和字形属性。可以通过Font的构造 函数来创建新的字体,使用格式如下: Font(familyName, emSize) Font (Font, FontStyle),5.3.2 文本的绘制 Graphics的DrawString方法可用于在图形对象上绘制文本,使用格式如下: DrawString(String, Font, Brush, Point) DrawString(String, Font, Brush, RectangleF),【案例40】特效文字 在本实例中,将实现三维立体文字、阴影文字、渐变文字和图案文字的特效,效果如图5-3-1所示。,图5-3-1 特效文字,在本例实现过程中,将学习图形文本的处理方法。案例实现过程如下。 1创建项目 2界面设计 3添加事件处理程序 思考与练习 5,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号