- 1、本文档共49页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第11章 图 形 设 计
11.1 绘图概述
11.2 绘图的基本步骤
11.3 绘制图形
11.4 创建画图工具
11.5 绘制文本
(1)像素
(2)坐标系
11.1 绘图概述
11.1.1 绘图的基本知识
(3)Paint事件
这种在屏幕上进行绘制的操作称为“绘画”。窗体和控件都有一个Paint事件。
每当需要重新绘制窗体和控件(例如,首次显示窗体或窗体由另一个窗口覆盖)时就会发生该事件。用户所编写的用于显示图形的任何代码通常都包含在Paint事件处理程序中。
(4)颜色
颜色是绘图功能中非常重要的一部分,在C#中颜色用Color结构和Color列举来表示。在Color结构中颜色由4个整数值Red、Green、Blue和Alpha表示。其中Red、Green和Blue可简写成R、G、B,表示颜色的红、绿、蓝三原色;Alpha表示不透明度。
可以通过Color类的FromArgb方法来设置和获取颜色。FromArgb方法使用的语法格式如下:
Color.FromArgb([A,]R,G,B)
GDI+是Windows的Graphics Device Interface(图形设备接口)。GDI+是一个2D(二维)图形库,通过它可以创建图形、绘制文本以及将图形图像作为对象来操作。
11.1.2 什么是GDI+
Graphics类封装一个GDI+绘图图面,无法继承此类。该类提供了对象绘制到显示设备的方法,且与特定的设备上下文关联。
也就是说,Graphics类是GDI+的核心类,它包含许多绘制操作方法和图像操作方法,所有C#的图形绘制都是通过它提供的方法进行的。例如,DrawLine方法就是绘制一条连接由坐标对指定的两个点的线条。
11.1.3 Graphics类
1. 创建Graphics对象
在绘图之前,必须在指定的窗体上创建一个Graphics对象,即建立一块画布,只有创建了Graphics对象,才可以调用Graphics类的方法画图。
但是,不能直接建立Graphics类的对象,例如,以下语句是错误的:
Graphics 对象名= new Graphics();
11.2 绘图的基本步骤
Graphics对象:一块画布
(1)调用窗体CreateGraphics方法来建立Graphics对象
通过当前窗体的CreateGraphics方法,把当前窗体的画笔、字体和颜色作为默认值,获取对Grpahics对象的引用。例如,在窗体Form1的Paint事件(该事件是在绘制窗体时发生)中编写如下代码:
private void Form1_Paint(object sender, PaintEventArgs e)
{ Graphics gobj = this.CreateGraphics();
//调用gobj的方法画图
}
(2)在窗体的Paint事件处理过程中建立Graphics对象
在窗体的Paint事件处理过程中,通过Graphics属性获取Graphics对象。例如,在窗体Form1的Paint事件中编写如下代码:
private void Form1_Paint(object sender, PaintEventArgs e)
{ Graphics gobj = e.Graphics;
//调用gobj的方法画图
}
2. 创建绘图工具
创建Graphics对象后,可用于绘制线条和形状、呈现文本或显示与操作图像。与Graphics对象一起使用的主要对象有以下几类。
(1)Pen类:用于绘制线条、勾勒形状轮廓或呈现其他几何表示形式。
(2)Brush类:用于填充图形区域,如实心形状、图像或文本。
(3)Font类:提供有关在呈现文本时的字体。
(4)Color结构:表示要显示的不同颜色。
3. 使用Graphics类提供的方法绘图
Graphics类提供的绘图方法可以绘制空心图形、填充图形和文本等:
绘制空心图形的方法:DrawArc、DrawBezier、DrawEllipse、 Drawlmage、DrawLine、DrawPolygon和DrawRectangle等。
绘制填充图形的方法:FillClosedCurve、FillEllipse、FillPath、FillPolygon和FillRectangle等。
绘制文字的方法:Drawstring。
4. 清理Graphics对象
您可能关注的文档
- 第1章繁殖方式与品种类型试编.pptx
- 第1章数据库基础试编.pptx
- 第2章电子商务系统与模式试编.pptx
- 第2章化学热力学基础试编.pptx
- 第2章塑料的组成与工艺特性试编.pptx
- 第2章小信号放大试编.pptx
- 第2专题:公共部门经济行为及功能试编.pptx
- 第03章第16-18节胆道疾病病人的护理试编.pptx
- 第3章高频功率放大器试编.pptx
- 第3章软件工程基础试编.pptx
- 数据仓库:Redshift:Redshift与BI工具集成.docx
- 数据仓库:Redshift:数据仓库原理与设计.docx
- 数据仓库:Snowflake:数据仓库成本控制与Snowflake定价策略.docx
- 大数据基础:大数据概述:大数据处理框架MapReduce.docx
- 实时计算:GoogleDataflow服务架构解析.docx
- 分布式存储系统:HDFS与MapReduce集成教程.docx
- 实时计算:Azure Stream Analytics:数据流窗口与聚合操作.docx
- 实时计算:Kafka Streams:Kafka Streams架构与原理.docx
- 实时计算:Kafka Streams:Kafka Streams连接器开发与使用.docx
- 数据仓库:BigQuery:BigQuery数据分区与索引优化.docx
文档评论(0)