本主题介绍 Windows Presentation Foundation (WPF) 的图形、动画和媒体功能,使用这些功能,可以向应用程序添加图形、过渡效果、声音和视频。
WPF 提供高级绘图和动画功能,以前只能从专用库(具体来说,就是 Microsoft Windows 图形设备接口 (GDI) 和 Microsoft Windows GDI+)使用这些功能。现在,WPF 提供对多媒体、向量图形、动画和内容撰写的集成支持,使得开发人员可以轻松地生成悦目的用户界面和内容。使用 Microsoft Visual Studio .NET 或者甚至文本编辑器(如 Microsoft 记事本),可以创建矢量图形或复杂的动画并将媒体集成到应用程序中。
WPF 在图形和多媒体方面的新增功能
WPF 向 Windows 开发人员引进了新的图形功能,这些功能具有如下优点:
与分辨率和设备无关的图形。WPF 图形系统使用与设备无关的单元来支持分辨率和设备独立性。每个与设备无关的像素都会随系统上的每英寸点数设置自动缩放。
更高的精度。WPF 坐标系使用双精度值,而不使用浮点值。转换值和不透明度值也是使用双精度值来表示。WPF 还支持更广泛的颜色域 (scRGB),并为管理来自不同颜色空间的输入提供了集成的支持。
高级图形和动画支持。WPF 通过为您管理场景图简化了图形编程;您无需再担心场景处理、呈现循环和双线性内插算法。WPF 提供了命中测试支持、集成的动画系统和全面的字母合成支持。
硬件加速。WPF 图形系统旨在利用图形硬件来最小化 CPU 使用率。
二维形状
WPF 提供了一个库,包含用矢量绘制的常用 二维 形状,如下图中演示的矩形和椭圆。
这些内部的 WPF 形状不仅仅是形状:它们是可编程的元素,能够实现可通过最常见的控件(包括键盘输入和鼠标输入)实现的许多功能。
下面的插图显示前面 XAML 标记和代码隐藏的输出。
二维几何图形
当 WPF 提供的 二维 形状不足时,可以使用 WPF 中的几何图形和路径支持来创建自己的形状。下面的插图显示如何使用几何图形来创建形状、如何将几何图形用作绘图画笔以及如何使用几何图形来剪裁其他 WPF 元素。
二维效果
WPF 提供了一个包含 二维 类的库,可用来创建各种效果。使用 WPF 的 二维 呈现功能,可以绘制具有渐变、位图、绘图和视频的 UI 元素,并借助于旋转、缩放和扭曲功能来操作这些元素。下图举例说明通过 WPF 画笔可获得的多种效果。
三维呈现
WPF 提供了一组三维呈现功能,这些功能可与 WPF 中的二维图形支持功能集成,以便您创建更加