第六章 图形编程ppt课件.ppt
《第六章 图形编程ppt课件.ppt》由会员分享,可在线阅读,更多相关《第六章 图形编程ppt课件.ppt(35页珍藏版)》请在三一办公上搜索。
1、第六章 GDI+编程,议程,.NET图形编程概述画笔和画刷图形的绘制文本和字体双缓冲,一、图形编程概述,1.GDI+技术简介GDI:Graphics Device InterfaceGDI+是一种构成Microsoft Windows XP操作系统的子系统的应用程序编程接口(API)。GDI+负责在屏幕和打印机上显示信息。GDI+:GDI的改进,同时也是.NET框架结构的重要组成部分。和GDI一样它提供了对二维图形图像和文字排版处理的支持。通过GDI+能够创建与设备无关的应用程序。,GDI+提供的新特性:-Alpha混合技术-反锯齿处理技术-渐变色和纹理填充-宽线条-基本几何曲线样式-可缩放区
2、域-浮点数坐标-嵌入画笔-高质量过滤和缩放-多种线条样式和端点选项,6.1坐标系统,GDI+在坐标系中绘制直线、矩形和其他形状。我们可以从各种各样的坐标系统中选择,但默认系统的原点是在左上角,并且x轴指向右边,y轴指向下边。默认坐标系统的度量单位是像素。,(0,0),(x,0),(0,y),注:x,y为屏幕的分辨率,6.2 Graphics类,Graphics类是使用GDI+的基础,它代表了所有输出显示的绘图环境,用户可以通过编程操作Graphics 对象,在屏幕上绘制图形、呈现文本或操作图像。创建Graphics 对象可以有多种方法。(1)Paint事件 在为窗体编写 Paint 事件处理程
3、序时,图形对象作为一个 PaintEventArgs 类的实例提供。下面的代码引用 Paint 事件的 PaintEventArgs 中的 Graphics 对象:private void Form1_Paint(object sender,PaintEventArgs pe)/声明图形对象并把它设置为PaintEventArgs事件提供的图形对象 Graphics g=pe.Graphics;/在这插入绘制窗体的代码,(2)CreateGraphics方法 使用控件或窗体的 CreateGraphics()方法来获取对 Graphics 对象的引用,该对象表示这个控件或窗体的绘图表面。例如:
4、Graphics g;/把g设为一个图形对象,来表示控件或窗体的绘图平面g=this.CreateGraphics();/this可替换成其他的控件名,用this的话将form创建为画布(3)Graphics.FromImage方法 从 Image 类派生的任何对象创建图形对象,调用 Graphics.FromImage()方法即可。例如:Bitmap myBitmap=new Bitmap(C:myPic.bmp);Graphics g=Graphics.FromImage(myBitmap);,在 GDI+中,可使用“画笔”和“画刷”对象来呈现图形、文本和图像。画笔是 Pen 类的实例,可
5、用于绘制线条和空心形状。画刷是从抽象类Brush 类派生的任何类的实例,可用于填充形状或绘制文本。Color对象是表示特定颜色类的实例,画笔和画刷可使用构造函数来指定它所呈现的图形的颜色。例如:Pen myPen=new Pen(Color.Red);/创建一个红色的笔.SolidBrush myBrush=new SolidBrush(Color.Blue);/创建一个深蓝的画刷.,Graphics类的常用属性和方法分别如表6-1和表6-2所示。,表6-1 Graphics类的常用属性,表6-2 Graphics类的常用方法,二、绘图,.NET提供了绘制各种图形的功能。它允许用户在窗体及其中
6、的各种对象上绘制直线、矩形、多边形、圆、椭圆、圆弧、曲线、饼图等图形状态。2.1 画笔 画笔(Pen)用于绘制直线和曲线,无法继承此类,它在System.Drawing命名空间中。画笔可用于绘制线条、曲线以及勾勒形状轮廓。下面的代码创建一支基本的黑色画笔:Pen myPen=new Pen(Color.Black);/创建一个默认宽度为1的黑色画笔Pen myPen=new Pen(Color.Black,5);/创建一个宽度为5的黑色画笔 也可以通过已存在的画刷对象创建画笔。下面的代码创建基于已存在画刷(名为 myBrush)的画笔:Pen myPen=new Pen(myBrush);/创
7、建一个画笔,与myBrush有相同的属性,并且默认宽度为1。Pen myPen=new Pen(myBrush,5);/创建一个画笔,与myBrush有相同的属性,并且宽度为5.,在画笔创建后,可以设置画笔的线条形式的各种属性。Width和Color等属性会影响线条的外观,而StartCap和EndCap属性将预设或自定义的形状添加到线条的开始或结尾。DashStyle属性允许在实线、虚线、点划线或自定义点划线之间进行选择,而DashCap属性可以自定义线条中短划线的结尾。,2.2 画刷 画刷是与 Graphics 对象一起使用来创建实心形状和呈现颜色与图案的对象。几种不同类型的画刷如表6-3
8、所示。所以这些类均是从Brush类继承的,该类是抽象类,不能实例化。,表6-3 画刷的类型,例6.1 设计WinForm应用程序分别使用画笔和画刷画出以坐标(30,30)和(130,30)为起点的长为70、高为50的矩形。,2.3 绘制直线 绘制直线时,可以调用Graphics类中的DrawLine方法,该方法为可以重载方法,主要用来绘制一条连接由坐标对指定的两个点的线条,其常用格式有以下两种:1)绘制一条连接两个Point结构的线,如下所示:Graphics g=this.CreateGraphics();g.DrawLine(Pen myPen,Point pt1,Point pt2);其
9、中笔对象myPen确定线条的颜色、宽度和样式。pt1是Point结构,它表示要连接的一个点。Pt2是Point结构,表示要连接的另一个点。2)绘制一条连接由坐标对指定的两个点的线条,如下所示:Graphics g=this.CreateGraphics();g.DrawLine(Pen myPen,int x1,int y1,int x2,int y2);,DrawLine方法中各参数及说明如表6-4所示。,6-4 DrawLine方法中各参数及说明,例6.2 设计WinForm应用程序分别使用以上介绍的方法绘制直线。,2.4 绘制矩形 可以调用Graphics类中的DrawRectangle
10、方法来绘制矩形,该方法为可重载方法,主要用来绘制由坐标对、宽度和高度指定的矩形,其常用格式有以下两种。1)绘制由Rectangle结构指定的矩形,如下所示:Graphics g=this.CreateGraphics();g.DrawRectangle(Pen myPen,Rectangle rect);其中myPen为笔Pen的对象,它确定矩形的颜色、宽度和样式。rect表示要绘制矩形的Rectangle结构。例如,声明一个Rectangle结构,代码如下:Rectangle rect=new Rectangle(30,30,100,80);/以(30,30)为起点长为100,高为80的矩形
11、 2)绘制由坐标对、宽度和高度指定的矩形,如下所示:Graphics g=this.CreateGraphics();g.DrawRectangle(Pen myPen,int x,int y,int width,int height);,2.5 绘制椭圆 绘制椭圆时,可以调用Graphics类中的DrawEllipse方法,该方法为可重载方法,主要用来绘制边界由Rectangle结构指定的椭圆,其常用格式有以下两种。1)绘制边界由Rectangle结构指定的椭圆,如下所示:Graphics g=this.CreateGraphics();g.DrawEllipse(Pen myPen,Rec
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第六章 图形编程ppt课件 第六 图形 编程 ppt 课件
链接地址:https://www.31ppt.com/p-2133994.html