C#程序设计 教学课件 作者 刘克成 等 Ch07.pptVIP

C#程序设计 教学课件 作者 刘克成 等 Ch07.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第7章 C#图形图像编程基础 本章主要介绍使用C#进行图形图像编程基础,其中包括GDI+绘图基础、C#图像处理基础以及简单的图像处理技术。 7.1 GDI+绘图基础 7.2 C#图像处理基础 7.1 GDI+绘图基础 编写图形程序时需要使用GDI(Graphics Device Interface,图形设备接口),从程序设计的角度看,GDI包括两部分:一部分是GDI对象,另一部分是GDI函数。GDI对象定义了GDI函数使用的工具和环境变量,而GDI函数使用GDI对象绘制各种图形,在C#中,进行图形程序编写时用到的是GDI+(Graphics Device Interface Plus)版本,GDI+是GDI的进一步扩展,它使编程更加方便。 7.1.1 GDI+概述 GDI+是微软在Windows 2000以后操作系统中提供的新的图形设备接口,其通过一套部署为托管代码的类来展现,这套类被称为GDI+的“托管类接口”,GDI+主要提供了以下三类服务:(1)二维矢量图形:GDI+提供了存储图形基元自身信息的类(或结构体)、存储图形基元绘制方式信息的类以及实际进行绘制的类。 (2)图像处理:大多数图片都难以划定为直线和曲线的集合,无法使用二维矢量图形方式进行处理。因此,GDI+为我们提供了Bitmap、Image等类,它们可用于显示、操作和保存BMP、JPG、GIF等图像格式。 (3)文字显示:GDI+支持使用各种字体、字号和样式来显示文本。 7.1.2 Graphics类 通创建Graphics对象的三种方法 方法一 //窗体的Paint事件的响应方法 private void form1_Paint(object sender, PaintEventArgs e) { Graphics g = e.Graphics; } 方法二 例如: Graphics g = this.CreateGraphics(); 注意:此时以this所代表的窗体为画布,也可以使用其他控件对象的引用,创建以控件对象为画布的Graphics对象。 方法三 //建立Image对象,名为“g1.jpg”的图片位于当前路径下 Image img = Image.FromFile(g1.jpg); //创建Graphics对象 Graphics g = Graphics.FromImage(img); 注意:此时以文件“g1.jpg”为画布,使用g进行绘制图形时,其图形是绘制在文件“g1.jpg” 上的。 7.1.3 常用画图对象 在创建了Graphics对象后,就可以用它开始绘图了,可以画线、填充图形、显示文本等等,其中主要用到的对象还有: Pen:定义用于绘制直线和曲线的对象。 Color:表示 ARGB 颜色。 Font:定义特定的文本格式,包括字体、字号和字形属性。 Brush:定义用于填充图形形状(如矩形、椭圆、饼形、多边形和封闭路径)的内部的对象。 Rectangle:存储一组整数,共四个,表示一个矩形的位置和大小 。 Point:表示在二维平面中定义点的、整数 X 和 Y 坐标的有序对 。 注意:各个对象的构造函数。 Color对象 在自然界中,颜色大都由透明度(A)和三基色(R,G,B)所组成。在GDI+中,通过Color结构封装对颜色的定义,Color结构中,除了提供(A,R,G,B)以外,还提供许多系统定义的颜色,如Pink(粉颜色),另外,还提供许多静态成员,用于对颜色进行操作。 Color red = Color.FromArgb(255, 0, 0); Color red = Color.FromArgb(120, 255, 0, 0)); 7.1.4 基本图形绘制举例 1.画一个矩形 2.画一个弧 3.画线 4.画椭圆 5.输出文本 6.填充路径 注意:书中的实例。 7.1.5 画刷和画刷类型 Brush类型是一个抽象类,所以它不能被实例化,也就是不能直接应用,但是我们可以利用它的派生类,如:HatchBrush、SolidBrush和TextureBrush等。画刷类型一般在System.Drawing命名空间中,如果应用HatchBrush和GradientBrush画刷,需要在程序中引入System.Drawing.Drawing2D命名空间。 画刷和画刷应用举例 1.SolidBrush(单色画刷) 2.HatchBrush(阴影画刷) 3.TextureBrush(纹理画刷) 4.LinearGradientBrush和PathGradientBr

文档评论(0)

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档