- 1、本文档共38页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第10章 GDI+绘图 3 hours 主要内容 GDI+中的颜色和坐标 GDI+中的绘图对象 GDI是Graphics Device Interface的缩写, 是图形设备接口, 它的主要任务是负责系统与绘图程序之间的信息交换,处理所有Windows程序的图形输出。 10.1 GDI+简介 GDI+是由GDI技术“进化”而来,并添加了新的功能。 GDI+是Windows 中的一个子系统,它负责在屏幕和打印设备输出有关信息,它是一组通过C++ 类实现的应用程序编程接口。 无需考虑具体显示设备的细节, 只需调用GDI+库输出的类的一些方法即可完成图形操作,真正的绘图工作由这些方法交给特定的设备驱动程序来完成. GDI+使得图形硬件和应用程序相互隔离,从而使开发人员编写设备无关的应用程序变得非常容易。 GDI+新增功能的介绍 1.渐变的画刷(Gradient Brushes) GDI+允许用户创建一个沿路径或直线渐变的画刷,来填充外形(shapes),路径(paths),区域(regions),渐变画刷同样也可以画直线、曲线、路径,当你用一个线形画刷填充一个外形(shapes)时,颜色就能够沿外形逐渐变化。 2.基数样条函数(Cardinal Splines) GDI+支持基数样条函数,而GDI不支持。基数样条是一组单个曲线按照一定的顺序连接而成的一条较大曲线。样条由一系列点指定,并通过每一个指定的点。由于基数样条平滑地穿过组中的每一个点(不出现尖角),因而它比用直线连接创建的路径更精确。 GDI+新增功能的介绍 3.持久路径对象(Persistent Path Objects) 在GDI中,路径属于设备描述表(DC),画完后路径就会被破坏。在GDI+中,绘图工作由Graphics对象来完成,你可以创建几个与Graphics分开的路径对象,绘图操作时路径对象不被破环,这样你就可以多次使用同一个路径对象画路径了。 4.变形和矩阵对象(Transformations & Matrix Object) GDI+提供了矩阵对象,使得编写图形的旋转、平移、缩放代码变得非常容易。一个矩阵对象总是和一个图形变换对象联系起来。 GDI+新增功能的介绍 5.多种图像格式支持 GDI+除了支持BMP等GDI支持的图形格式外,还支持JPEG、GIF、PNG、TIFF等图像格式,你可以直接在程序中使用这些图片文件,而无需考虑它们所用压缩算法。 6.其他 GDI+还将支持其他技术,譬如重新着色、颜色校正、元数据、图形容器。 GDI+的工作机理 GDI+为开发者提供了一组实现与各种设备进行交互的库函数。 GDI+的本质在于,它能够替代开发人员实现与显示器及其他外设的交互;而从开发者角度来看,要实现与这些设备的直接交互却是一项艰巨的任务。 下图展示了GDI+在开发人员与上述设备之间起着重要的中介作用。其中,GDI+为我们“包办”了几乎一切——从把一个简单的字符串“HelloWorld”打印到控制台到绘制直线、矩形甚至是打印一个完整的表单等。 GDI+工作原理 GDI+是如何工作的呢?为了弄清这个问题,让我们来分析一个示例—绘制一条线段。 实质上,一条线段是从一个开始位置(X0,Y0)到一个结束位置(Xn,Yn)的一系列像素点的集合。为了画出这样的一条线段,设备需要知道相应的设备坐标或物理坐标。 然而,开发人员不是直接告诉该设备,而是调用GDI+的DrawLine()方法,然后,由GDI+在内存(即“视频内存”)中绘制一条从点A到点B的直线。GDI+读取点A和点B的位置,然后把它们转换成一个像素序列,并且指令监视器显示该像素序列。简言之,GDI+把设备独立的调用转换成了一个设备可理解的形式。 10.2颜色与坐标 颜色与坐标是GDI+中2个核心的东西; 颜色用于表达所绘制图形的外观; 坐标用于表达所绘制图形的位置; GDI+的颜色设置 GDI+中,很多绘图操作都要涉及颜色的问题,举个例子,要绘制一个矩形,就要指定其边框的颜色以及其内部的填充色,当然,我们可以使用GDI+的默认颜色。 GDI+中,颜色都封装在Color结构中。把红、绿、蓝色值传送给Color结构的一个函数,就可以创建一种颜色。 设置颜色的几种方法 使用Color对象的方法来设置颜色 使用ColorTranslator对象的方法来设置颜色 使用Color结构来设置颜色 使用Color的方法来设置颜色 Color类的方法有FromArgb()以及FromKnownColor() private void button1_Click(object sender, EventArgs e) { button1.F
您可能关注的文档
- 不透明物体的颜色.ppt
- 专题复习训练卷二对环境的察觉.doc.doc
- 中华人民共和国国家标准重大危险源辨识(GB18218-2000).doc
- 中国地质大学附中分节教学设计(试用)-中国地大附中教务在线.doc
- 中国多氯联苯管理与处置初示范项目之-环境保护对外合作中心.doc
- 中国校长网-小学.doc
- 中学生网站-国立台南高级海事水产职业学校.doc
- 中山市华侨中学2016届高三4月高考模拟(化学).doc.doc
- 中考语文总复习资料大全第一讲语音和汉字【考查要点】语音、文字、书写.doc
- 主要工作.doc
- 2025年网络文学平台版权运营模式创新与版权保护体系构建.docx
- 数字藏品市场运营策略洞察:2025年市场风险与应对策略分析.docx
- 全球新能源汽车产业政策法规与市场前景白皮书.docx
- 工业互联网平台安全标准制定:安全防护与合规性监管策略.docx
- 剧本杀剧本创作审核标准2025年优化与行业自律.docx
- 2025年新能源电动巡逻车在城市安防中的应用对城市环境的影响分析.docx
- 全渠道零售案例精选:2025年行业创新实践报告.docx
- 2025年网约车司乘纠纷处理机制优化与行业可持续发展报告.docx
- 2025年宠物烘焙食品市场法规政策解读:合规经营与风险规避.docx
- 2025年宠物行业数据安全监管政策影响分析报告.docx
最近下载
- 汽车英语(第四版)习题答案.pdf VIP
- 苏科版《物质物理属性》复习总结课件.ppt VIP
- 一般过去时练习专项练习.docx VIP
- (市质检)福州市2025届高三第一次质量检测(一检) 语文试卷(含答案).docx
- 初中英语单词全集打印版.doc VIP
- 浪潮分布式存储InCloud Storage 用户手册.pdf VIP
- 量子传感技术的最新进展与应用.docx
- 专题20函数与相似综合问题-【压轴必刷】2022中考数学压轴大题之经典模型培优案(解析版).pdf VIP
- 医院医德医风考评制度及实施细则(最新版).docx
- (市质检)福州市2025届高三第一次质量检测(一检) 数学试卷(含答案).docx
文档评论(0)