标 题: 一些关于GDI+的文字——新增功能
发信站: 浙江大学海纳百川站 (Tue Oct 26 11:53:30 2004), 转信
GDI+ 的新增功能
GDI+ 在两方面与 GDI 不同。第一,GDI+ 通过提供新功能(例如,渐变画笔和 alpha
混合)扩展了 GDI 的功能。第二,修订了编程模型,使图形编程更加简易灵活。
渐变画笔
通过提供用于填充图形、路径和区域的线性渐变画笔和路径渐变画笔,GDI+ 扩展了 GD
I 的功能。渐变画笔还可用于绘制直线、曲线和路径。线性渐变画笔可用于使用颜色来
填充图形,画笔在图形中移动时,颜色会逐渐改变。例如,假定您通过指定图形左边为
蓝色、右边为绿色创建了一个水平渐变画笔。当您用水平渐变画笔填充该图形时,随着
画笔从图形的左边移至右边,颜色就会由蓝色逐渐变为绿色。用类似方法定义的垂直渐
变画笔填充的图形,颜色从上到下变化。
用PathGradientBrush填充图形时,可选择不同的方法来指定当您从图形的一部分至另一
部分移动画笔时颜色的变化方式。一种选择是指定中心颜色和边缘颜色,以使在您从图
形中间向外边缘移动画笔时,像素逐渐从一种颜色变化到另一种颜色。
样条
我感觉GDI+在GDI上面增加的一个最重要的功能就是增强了几何运算能力,包括提供了精
确定点坐标类PiontF,坐标变换类Matrix,另外就是GDI+ 支持在 GDI 中不支持的基数
样条。
基数样条是一连串单独的曲线,这些曲线连接起来形成一条较大的曲线。样条由点的数
组指定,并通过该数组中的每一个点。基数样条平滑地(没有锐角)通过数组中的每一
个点,因此,比通过连接直线创建的路径更精准。
独立的Path对象
在 GDI 中,路径属于设备上下文,并且会在绘制时被毁坏。利用 GDI+,绘图由 Graph
ics 对象执行,而您可以创建并维护几个与 Graphics 对象分开的 GraphicsPath 对象
。绘图操作不会破坏 GraphicsPath 对象,因此您可以多次使用同一个 GraphicsPath
对象来绘制路径。
变形和矩阵对象
GDI+ 提供了 Matrix 对象,它是一种可以使变形(旋转、平移,等等)简易灵活的强大
工具。矩阵对象与所变形对象联合使用。例如,GraphicsPath 对象具有 Transform 方
法,此方法接收 Matrix 对象作为参数。单一的 3×3 矩阵可存储一种变形或一个变形
序列。
缩放区域
GDI+ 通过对区域的支持极大地扩展了 GDI。在 GDI 中,区域存储在设备坐标中,而且
,可应用于区域的唯一变形是平移。GDI+ 在全局坐标中存储区域,且允许区域发生任何
可存储在变形矩阵中的变形(例如缩放)。
Alpha 混合
使用 alpha 混合,您可以指定填充颜色的透明度。透明色与背景色相混合——填充色
越透明,透出的背景色就越多,但是我觉得其提供的色彩blending方案不够多,sigh,
透明色说穿了,就是简单地做插值……
对多图像格式的支持
GDI+ 提供 Image、Bitmap 和 Metafile 类,使您可以用不同的格式加载、保存和操作
图像。支持的格式如下:
BMP
GIF
JPEG
EXIF
PNG
TIFF
ICON
WMF
EMF
--
■■■■■■■■■■■■■■■■■■■■■■■■
这个世界只有10种人,懂二进制的和不懂二进制的
■■■■■■■■■■■■■■■■■■■■■■■■
jackyang@cs.zju since 2001
※ 来源:·浙江大学海纳百川站 bbs.zju.edu.cn·[FROM: jackyang]
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。