1 / 45
文档名称:

VC下如何使用GDI+进行图像程序设计.doc

格式:doc   页数:45
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

VC下如何使用GDI+进行图像程序设计.doc

上传人:DOC KING 2011/11/29 文件大小:0 KB

下载得到文件列表

VC下如何使用GDI+进行图像程序设计.doc

文档介绍

文档介绍:VC下如何使用GDI+进行图像程序设计
目录
GDI+介绍 3
1. GDI+的三个部分 3
2. 基于类的接口结构 4
GDI+的新增特性? 4
1. 新特性 4
7
直线、曲线和图形 10
1. 矢量图形概述 11
2. 钢笔、直线和矩形 12
13
14
5. 基数样条 14
6. 贝塞尔样条 15
7. 路径 16
8. 画笔和填充的形状 18
9. 打开的曲线和闭合的曲线 21
10. 区域 22
11. 剪辑 23
24
13. 用直线和曲线消除锯齿 24
图像、位图和图元文件 25
1. 位图类型 25
28
、定位和克隆图像 29
4. 裁切和缩放图像 31
坐标系统和变形 32
1. 坐标系统类型 32
35
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 类一起使用。例如, 方法接收 Pen