- 1、本文档共46页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VC_GDI编程.
VC下如何使用GDI+进行
图像程序设计
孙涛 整理
/suntaoznz
目 录
GDI+介绍 3
1. GDI+的三个部分 3
2. 基于类的接口结构 4
GDI+的新增特性? 4
1. 新特性 4
2.编程模式的变化 7
直线、曲线和图形 10
1. 矢量图形概述 11
2. 钢笔、直线和矩形 12
3.椭圆和弧线 13
4.多边形 14
5. 基数样条 14
6. 贝塞尔样条 15
7. 路径 16
8. 画笔和填充的形状 18
9. 打开的曲线和闭合的曲线 21
10. 区域 22
11. 剪辑 23
12.拉平路径 24
13. 用直线和曲线消除锯齿 24
图像、位图和图元文件 25
1. 位图类型 25
2.图元文件 28
3.绘制、定位和克隆图像 29
4. 裁切和缩放图像 31
坐标系统和变形 32
1. 坐标系统类型 32
2.变形的矩阵表示形式 35
3.全局变形和局部变形 39
图形容器 41
GDI+介绍
Microsoft? Windows? GDI+ 是Windows XP 或者Windows Server 2003 操作系统的子系统。它负责在屏幕和打印机上显示信息。GDI+ 是一个应用程序编程接口,它是一个C++ 类。
如同它的名字暗示一样,GDI+ 是Windows 图形设备接口(GDI)的继承者, 这个图形设备接口包括早期的Windows版本。 Windows XP 或者 Windows Server 2003 为了支持以前的应用程序还支持GDI,但是新的应用程序开发人员应该去使用GDI+ 去作他们的图像处理工作。因为GDI+对GDI的很多性能进行了优化,同时还提供了其他的一些特性。
一个图形设备接口,例如GDI+, 允许应用程序开发人员在打印机或屏幕上显示信息,而不用去考虑显示设备的具体细节。应用程序开发人员调用GDI+ classes 提供的方法(methods),这些方法将依次传到指定的设备驱动程序上。 GDI+ 让应用程序与图形硬件分离开,并且它可以开发人员创建独立于设备的应用程序。
1. GDI+的三个部分
2D矢量图 (2-D vector graphics)
图像 (Imaging)
印刷格式 (Typography)
2D矢量图 2-D vector graphics
矢量图形包括坐标系统中的系列点指定的绘图基元(例如,直线、曲线和图形)。例如,直线可通过它的两个端点来指定,而矩形可通过确定其左上角位置的点并给出其宽度和高度的一对数字来指定。简单路径可由通过直线连接的点的数组来指定。贝塞尔样条是由四个控制点指定的复杂曲线。
GDI+ 提供了存储基元自身相关信息的类(和结构)、存储基元绘制方式相关信息的类,以及实际进行绘制的类。例如,Rectangle 结构存储矩形的位置和尺寸;Pen 类存储有关线条颜色、线条粗细和线型的信息;而 Graphics 类具有用于绘制直线、矩形、路径和其他图形的方法。还有几种 Brush 类,它们存储有关如何使用颜色或图案来填充封闭图形和路径的信息。
您可以在图元文件中记录矢量图像(图形命令的序列)。GDI+ 提供了 Metafile 类,可用于记录、显示和保存图元文件。MetafileHeader 和 MetaHeader 类允许您检查图元文件头中存储的数据。
图像处理(Imaging)
某些种类的图片很难或者根本无法用矢量图形技术来显示。例如,工具栏按钮上的图片和显示为图标的图片就难以指定为直线和曲线的集合。拥挤的棒球运动场的高分辨率数字照片会更难以使用矢量技术来制作。这种类型的图像可存储为位图,即代表屏幕上单个点颜色的数字数组。GDI+ 提供了 Bitmap 类,可用于显示、操作和保存位图。
版式
版式关系到使用各种字体、字号和样式来显示文本。GDI+ 为这种复杂任务提供了大量的支持。GDI+ 中的新功能之一是子像素消除锯齿,它可以使文本在 LCD 屏幕上呈现时显得比较平滑。
2. 基于类的接口结构
GDI+ 的托管类接口包含大约 60 个类、50 个枚举和 8 个结构。Graphics 类是 GDI+ 的核心功能,它是实际绘制直线、曲线、图形、图像和文本的类。
许多类与 Graphics 类一起使用。例如,Graphics.DrawLine 方法接收 Pen 对象,该对象中存有所要绘制的线条的属性(颜色、宽度、虚线线型和外观)。Graphics.FillRectangle 方法可以接收指向 LinearGradientBrush 对象(它使用 Graphics 对象以渐变色填充矩形)的
文档评论(0)