C#程序设计pp10.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《C#程序设计pp10.ppt》由会员分享,可在线阅读,更多相关《C#程序设计pp10.ppt(32页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、nC#程序设计pp10第第第第1010章章章章 GDI+GDI+编程编程编程编程vGDI是是Graphics Device Interface的缩写,含义是的缩写,含义是图形设备接口图形设备接口,它,它的主要任务是负责系统与绘图程序之间的信息交换,处理所有的主要任务是负责系统与绘图程序之间的信息交换,处理所有Windows程序的图形输出。程序的图形输出。vGDI+是是 GDI升级,是一种应用程序编程接口升级,是一种应用程序编程接口(API),它以图形图,它以图形图像作为对象,可在像作为对象,可在 Windows窗体应用程序中以编程方式绘制或操作窗体应用程序中以编程方式绘制或操作图形图像。图形图
2、像。vGDI+的托管类接口包含拥有的托管类接口包含拥有6个命名空间(如表下页所示)和大约个命名空间(如表下页所示)和大约60个类、个类、50个枚举和个枚举和8个结构。个结构。第十章第十章第十章第十章 GDI+GDI+编程编程编程编程System.Drawing System.Drawing.Text System.Drawing.Imaging System.Drawing.Design System.Drawing.Printing GDI+基类 System.Drawing.Drawing2D 包含大多数的类、结构、枚举和委托,和基本绘图功能有关 包含提供高级功能的复杂的绘图类 包含图像处
3、理的各种类 包含将打印机或打印预览窗口作为输出设备时使用的类 包含一些预定义的对话框、属性表单和其他用户界面元素包含对字体和字体系列执行更高级操作的类 GDI+GDI+编程编程编程编程本章结构本章结构10.6 用GDI+显示字符串10.4 绘图的颜色10.3 绘图的图案10.7 用GDI+显示图像10.1 创建Graphics对象10.2 创建笔和画笔10.5 绘图工具10.1 创建创建GraphicsGraphics对象对象GraphicsGraphics类是使用类是使用GDI+GDI+的基础,它代表了所有输的基础,它代表了所有输出显示的绘图环境,用户可以通过编程操作出显示的绘图环境,用户可
4、以通过编程操作Graphics Graphics 对象,在屏幕上绘制图形、呈现文本或操作图像。创对象,在屏幕上绘制图形、呈现文本或操作图像。创建建Graphics Graphics 对象可以有多种方法。对象可以有多种方法。10.1 创建创建GraphicsGraphics对象对象(1)(1)在为窗体编制在为窗体编制 Paint Paint 事件处理程序时,图形对象作为一个事件处理程序时,图形对象作为一个 PaintEventArgs PaintEventArgs 提供。下面的代码引用提供。下面的代码引用 Paint Paint 事件的事件的 PaintEventArgs PaintEventA
5、rgs 中中 Graphics Graphics 对象:对象:private void Form1_Paint(object sender,private void Form1_Paint(object sender,System.Windows.Forms.PaintEventArgs pe)System.Windows.Forms.PaintEventArgs pe)/声明图形对象并把它设置为声明图形对象并把它设置为PaintEventArgsPaintEventArgs事件提供的事件提供的图形对象图形对象 Graphics g=pe.Graphics;Graphics g=pe.Grap
6、hics;/在这插入绘制窗体的代码在这插入绘制窗体的代码 10.1 创建创建GraphicsGraphics对象对象(2)使用控件或窗体的使用控件或窗体的 CreateGraphics方法来获取对方法来获取对 Graphics 对象的引用,该对象表示这个控件或窗体的对象的引用,该对象表示这个控件或窗体的绘图平面绘图平面。例如:。例如:Graphics g;/把把g设为一个图形对象,来表示控件或窗体的绘图平面设为一个图形对象,来表示控件或窗体的绘图平面g=this.CreateGraphics();10.1 创建创建GraphicsGraphics对象对象(3)通过通过 Image 类派生的任何
7、对象创建图形对象,方法是调用类派生的任何对象创建图形对象,方法是调用 Graphics.FromImage 方法。例如:方法。例如:Bitmap myBitmap=new Bitmap(“C:/myPic.bmp);Graphics g=Graphics.FromImage(myBitmap);10.1 创建创建GraphicsGraphics对象对象 在在 GDI+中,可使用笔对象和画笔对象来呈现图形、文本和中,可使用笔对象和画笔对象来呈现图形、文本和图像。图像。笔是笔是 Pen 类的实例,可用于绘制线条和空心形状。画笔类的实例,可用于绘制线条和空心形状。画笔是从抽象类是从抽象类Brush
8、类派生的任何类的实例,可用于填充形状或绘类派生的任何类的实例,可用于填充形状或绘制文本。制文本。Color 对象是表示特定颜色类的实例,笔和画笔可使用对象是表示特定颜色类的实例,笔和画笔可使用它来指示所呈现图形的颜色。它来指示所呈现图形的颜色。例如:例如:/创建一个红色的笔创建一个红色的笔.Pen myPen=new Pen(Color.Red);/创建一个深蓝的画刷创建一个深蓝的画刷.SolidBrush myBrush=new SolidBrush(Color.Blue);10.2 创建笔和画笔创建笔和画笔10.2.1 笔笔10.2.2 画笔画笔 笔可用于绘制线条、曲线以及勾勒形状轮廓。下
9、面的笔可用于绘制线条、曲线以及勾勒形状轮廓。下面的代码创建一支基本的黑色笔:代码创建一支基本的黑色笔:/创建一个默认宽度为创建一个默认宽度为1 1得黑笔得黑笔Pen myPen=new Pen(Color.Black);Pen myPen=new Pen(Color.Black);/创建一个宽度为创建一个宽度为5 5的黑笔的黑笔Pen myPen=new Pen(Color.Black,5);Pen myPen=new Pen(Color.Black,5);10.2 创建笔和画笔创建笔和画笔10.2.1 笔笔通过已存在的通过已存在的画笔对象画笔对象创建笔。下面的代码创建基于已存在画笔(名创建笔
10、。下面的代码创建基于已存在画笔(名为为 myBrush)的笔:)的笔:/创建一个画笔,与创建一个画笔,与myBrush有着相同的属性,并且默认宽度为有着相同的属性,并且默认宽度为1。Pen myPen=new Pen(myBrush);/创建一个画笔,与创建一个画笔,与myBrush有着相同的属性,并且宽度为有着相同的属性,并且宽度为5。Pen myPen=new Pen(myBrush,5);在创建笔后,即可使用它来绘制线条、弧线或空心形状。在创建笔后,即可使用它来绘制线条、弧线或空心形状。10.2 创建笔和画笔创建笔和画笔10.2.1 笔笔 下面的代码使用笔来绘制椭圆:下面的代码使用笔来绘
11、制椭圆:Pen myPen=new Pen(Color.Black);Graphics g=this.CreateGraphics();g.DrawEllipse(myPen,20,30,10,50);在笔创建后,便可以更改影响笔呈现线条形式的各种属性。在笔创建后,便可以更改影响笔呈现线条形式的各种属性。Width 和和 Color 等属性会影响线条的外观,而等属性会影响线条的外观,而 StartCap 和和 EndCap 属性预设或自定属性预设或自定义的形状添加到线条的开始或结尾。义的形状添加到线条的开始或结尾。DashStyle 属性使可以在实线、虚线、属性使可以在实线、虚线、点划线或自定
12、义点划线之间进行选择。点划线或自定义点划线之间进行选择。10.2 创建笔和画笔创建笔和画笔10.2.1 笔笔10.2 创建笔和画笔创建笔和画笔10.2.2 画笔画笔v画笔是可与画笔是可与 Graphics Graphics 对象一起用来创建实心形状和呈现文本的对对象一起用来创建实心形状和呈现文本的对象。几种不同类型的画笔如下表所示。象。几种不同类型的画笔如下表所示。画笔的类型画笔的类型10.2 创建笔和画笔创建笔和画笔10.2.2 画笔画笔【例例10.1】在窗体上绘制一个纯黄色的椭圆。该椭圆将符合为其提供的】在窗体上绘制一个纯黄色的椭圆。该椭圆将符合为其提供的矩形的大小(此例中为表示整个窗体的
13、矩形的大小(此例中为表示整个窗体的 ClientRectangle),如下图),如下图所示。所示。代码如下:代码如下:Graphics g=this.CreateGraphics();SolidBrush myBrush=new SolidBrush(Color.Yellow);g.FillEllipse(myBrush,ClientRectangle);10.3 绘图的图案绘图的图案复杂图案复杂图案复杂底纹复杂底纹简单图案简单图案 HatchBrushHatchBrush可以从大量预设可以从大量预设的图案中选择绘制时要使用的图的图案中选择绘制时要使用的图案,而不是纯色。下面的代码创案,而不是
14、纯色。下面的代码创建一个建一个 HatchBrush HatchBrush,它使用方格,它使用方格呢图案进行绘制,并使用红色作呢图案进行绘制,并使用红色作为前景色,蓝色作为背景色。为前景色,蓝色作为背景色。using using System.Drawing.Drawing2D;System.Drawing.Drawing2D;HatchBrush aHatchBrush=new HatchBrush aHatchBrush=new HatchBrush(HatchStyle.Plaid,HatchBrush(HatchStyle.Plaid,Color.Red,Color.Blue);Col
15、or.Red,Color.Blue);纹理画笔使用纹理画笔使用图像图像作为图作为图案填充形状或文本。下面的示案填充形状或文本。下面的示例创建一个例创建一个TextureBrushTextureBrush,它,它使用名为使用名为 myBitmap myBitmap 的图像进的图像进行绘制。行绘制。TextureBrush myBrush=new TextureBrush myBrush=new TextureBrush(new TextureBrush(new Bitmap(C:myBitmap.bmp)Bitmap(C:myBitmap.bmp););渐变画笔支持复杂底纹渐变画笔支持复杂底纹.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 程序设计 pp10
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内