WPF(Windows Presentation Foundation)是用于Windows的现代图形显示系统。引入“内置硬件加速”和“分辨率无关”等创新功能。
1.1 Windows图形演化
WPF的智能程度足够高,会尽量采用硬件优化方式,但如有必要,它也可采用软件计算方式来完成同样的工作,但是速度会变慢,在复杂动画或其他密集图形效果表现明显。
新的图形引擎:DirectX
DirectX能理解可由显卡直接渲染的高层元素。
1.2 WPF: 高级API
- 类似Web的布局模型
- 丰富的绘图模型
- 丰富的文本模型
- 作为首要编程概念的动画
- 支持音频和视频媒体
- 样式和模板
- 声明式用户界面
1.3 WPF 与分辨率无关
1.4 WPF 体系结构
PresentationFramewor.dll
包含WPF顶层的类型,包括那些表示窗口、面板以及其他类型控件的类型。它还实现了高层编程抽象,如样式。
PresentationCore.dll
包含了基础类型,如UIElement类和Visual类,所有形状类和控件类都继承自这两个类。如果不需要窗口和控件抽象层的全部特征,可使用这一层,而且仍能利用WPF的渲染引擎。
WindowsBase.dll
包含了更多基本要素,这些要素具有在WPF之外重要的潜能,如DispatcherObject类和DependencyObject类。
milcore.dll
是WPF渲染系统的核心,也是媒体集成层(Media Integration Layer, MIL)的基础。尽管将milcore.dll视为WPF的一部分,但它也是Windows Vista和Windows 7的核心系统组件之一。
WindowsCodecs.dll是一套提供图像支持的低级API。
Direct3D是一套低级API,WPF应用程序中的所有图形都由它进行渲染。
User32用于决定哪些程序实际占有桌面的哪一部分。所以它仍被包含在WPF中,但不再负责渲染通用控件。
如果觉得文章写得还行,请点个赞。如果想与我进一步交流,可以关注我的公众号或者加我的微信。
|