Microsoft.UI.Composition 命名空间
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
提供用于用户界面组合的 API。
类
| AmbientLight |
一种光,可照亮每个目标视觉对象。 |
| AnimationController |
为 KeyFrameAnimation 提供播放控件。 |
| AnimationPropertyInfo |
表示有关可进行动画处理的属性的信息。 |
| BackEasingFunction |
表示缓动函数,该函数在开始在指示的路径中进行动画处理之前略微收回动画的动作。 |
| BooleanKeyFrameAnimation |
以具有一个或多个关键帧的布尔属性为目标的基于时间的动画。 |
| BounceEasingFunction |
表示用于创建动画弹跳效果的缓动函数。 |
| BounceScalarNaturalMotionAnimation |
以任何基于标量的属性为目标的基于反弹物理的动画。 |
| BounceVector2NaturalMotionAnimation |
一个基于弹跳物理的动画,以任何基于 Vector2 的属性为目标。 |
| BounceVector3NaturalMotionAnimation |
基于弹跳物理的动画,以任何基于 Vector3 的属性为目标。 |
| CircleEasingFunction |
表示缓动函数,该函数使用循环函数创建加速和/或减速的动画。 |
| ColorKeyFrameAnimation |
一个基于时间的动画,该动画以具有一个或多个颜色关键帧的 Color 属性为目标。 ColorKeyFrameAnimation 类是受支持的 KeyFrameAnimation类型之一,用于对 SpriteVisual 上的 Brush 属性的 Color 属性进行动画处理。 使用 ColorKeyFrameAnimation 时,利用 Windows.UI.Color 对象获取关键帧的值。 利用 InterpolationColorSpace 属性定义系统将为动画插入的颜色空间。 |
| CompositionAnimation |
表示基动画类。 |
| CompositionAnimationGroup |
定义一组动画。 CompositionAnimationGroup 提供了一种将 CompositionAnimation分组到列表中的方法,该列表将在对 CompositionObject 调用 StartAnimationGroup 时同时启动。 CompositionAnimationGroup 中的所有 CompositionAnimation 都需要为动画本身中的 Target 属性赋值。 CompositionAnimationGroup 还可以与 ImplicitAnimationCollection 相关联,作为作为触发器的结果执行的动画。 |
| CompositionApiInformation |
表示有关组合 API 的信息。 |
| CompositionBackdropBrush |
将效果 (或效果链) 应用于 SpriteVisual 后面的区域的画笔。 |
| CompositionBatchCompletedEventArgs |
CompositionCommitBatch.Completed 或 CompositionScopedBatch.Completed 事件的参数。 |
| CompositionBrush |
用于绘制 SpriteVisual 的画笔的基类。 |
| CompositionCapabilities |
提供检查系统硬件功能的功能,以便可以相应地缩放视觉层效果。 这使你能够确保应用程序对渲染密集型操作的使用经过定制,以匹配设备的功能,从而提供最佳性能和愉快的视觉结果。 |
| CompositionClip |
剪裁对象(如 InsetClip)的基类。 |
| CompositionColorBrush |
使用纯色绘制 SpriteVisual 。 |
| CompositionColorGradientStop |
描述渐变中转换点的位置和颜色。 |
| CompositionColorGradientStopCollection |
表示可按索引单独访问的 CompositionColorGradientStop 对象的集合。 |
| CompositionCommitBatch |
一组活动动画或效果。 |
| CompositionContainerShape |
表示 CompositionShapes 的容器,用于对共享 2D 转换的项进行分组。 |
| CompositionDrawingSurface |
用于与 Direct2D 或 Direct3D 互操作的绘图图面。 |
| CompositionEasingFunction |
要与 KeyFrameAnimations 一起使用的内插器函数的基类。 CompositionEasingFunction 类是用于 KeyFrameAnimation 的缓动函数的基类。 缓动函数用于描述系统如何在两个不同的关键帧之间内插。 目前,有三种受支持的缓动函数: Linear、 Cubic Bezier 和 Step。 |
| CompositionEffectBrush |
使用筛选器效果的输出绘制 SpriteVisual。 筛选器效果说明是使用 CompositionEffectFactory 类定义的。 |
| CompositionEffectFactory |
在 Microsoft.Graphics.Canvas.Effects 命名空间中创建一个包含 Win2D 效果说明格式的合成对象,该对象 (WinAppSDK (WinUI 3) / UWP (WinUI 2) ) 。 注意 不支持的效果在效果命名空间的 Win2D API 参考 中标记为 [NoComposition]。 |
| CompositionEffectSourceParameter |
用于声明与 CompositionBrush (“效果源”) 关联的字符串) (任意名称。 调用 CompositionEffectBrush 的 SetSourceParameter 方法时,将发生给定名称与效果源的关联。 |
| CompositionEllipseGeometry |
表示具有指定中心和半径的椭圆。 |
| CompositionGeometricClip |
表示剪裁视觉对象部分的形状。 视觉对象的可见部分是由 CompositionGeometry 定义的形状。 将剪切几何图形之外的视觉对象部分。 |
| CompositionGeometry |
表示组合几何图形的基类。 |
| CompositionGradientBrush |
表示描述由渐变停止点组成的渐变的画笔。 CompositionGradientBrush 仅支持 Rgb 和 RgbLinear CompositionColorSpace。 |
| CompositionGraphicsDevice |
用于在合成器会话上为给定 DirectX 设备创建所有硬件绑定资源。 CompositionGraphicsDevice 包含用于执行 GPU 操作的 DirectX 设备。 开发人员可以从合成器顶级对象获取图形设备。 |
| CompositionLight |
可面向 UI 场景的光源的基类。 CompositionLight.Targets 属性确定哪些视觉对象亮起。 |
| CompositionLinearGradientBrush |
表示使用线性渐变绘制区域的画笔。 |
| CompositionLineGeometry |
表示两点之间的直线。 |
| CompositionMaskBrush |
使用应用了不透明蒙板的 CompositionBrush 绘制 SpriteVisual。 不透明蒙板的源可以是 CompositionColorBrush、CompositionLinearGradientBrush、CompositionSurfaceBrush、CompositionEffectBrush 或 CompositionNineGridBrush 类型的任意 CompositionBrush。 不透明度蒙板必须指定为 CompositionSurfaceBrush。 |
| CompositionMipmapSurface |
表示 mipmap 纹理的绘图图面。 |
| CompositionNineGridBrush |
在对源画笔的内容应用 Nine-Grid 拉伸后,使用 CompositionBrush 绘制 SpriteVisual 。 九网格拉伸的源可由 CompositionColorBrush、CompositionSurfaceBrush 或 CompositionEffectBrush 类型的任何 CompositionBrush 提供。 |
| CompositionNotificationDeferral |
表示应用可用于异步响应合成通知的延迟。 |
| CompositionObject |
表示可视化树结构中的节点的合成 API 的基类。 合成对象是合成 API 的所有其他功能使用和构建的可视化树结构。 API 允许开发人员定义和创建一个或多个 Visual 对象,每个对象表示可视化树中的单个节点。 |
| CompositionPath |
表示一系列相互连接的直线和曲线。 |
| CompositionPathGeometry |
表示一系列相互连接的直线和曲线。 |
| CompositionProjectedShadow |
表示使用光线、投射阴影的视觉对象与接收阴影的视觉对象之间的关系计算的基于场景的阴影,以便在每个接收器上以不同的方式绘制阴影。 |
| CompositionProjectedShadowCaster |
表示投射投影阴影的对象。 |
| CompositionProjectedShadowCasterCollection |
表示 CompositionProjectedShadowCaster 对象的集合。 |
| CompositionProjectedShadowReceiver |
表示一个对象,该对象可具有投影的阴影投射。 |
| CompositionProjectedShadowReceiverUnorderedCollection |
表示 CompositionProjectedShadowReceiver 对象的无序集合。 |
| CompositionPropertySet |
将值存储为键值对。 |
| CompositionRadialGradientBrush |
表示使用径向渐变绘制区域的画笔。 |
| CompositionRectangleGeometry |
表示指定大小的矩形形状。 |
| CompositionRoundedRectangleGeometry |
表示具有圆角的指定大小的矩形形状。 |
| CompositionScopedBatch |
显式创建的一组活动动画或效果。 |
| CompositionShadow |
可应用于 SpriteVisual 的阴影的基类。 |
| CompositionShape |
表示基形状类。 |
| CompositionShapeCollection |
表示可由索引单独访问的 CompositionShape 对象的集合。 |
| CompositionSpriteShape |
绘制笔划和填充的 CompositionGeometry 的 CompositionShape。 |
| CompositionStrokeDashArray |
表示值的集合,这些值指示用于轮廓形状的短划线和间隙的图案。 |
| CompositionSurfaceBrush |
使用 ICompositionSurface 中的像素绘制 SpriteVisual 。 |
| CompositionTransform |
为组合对象提供通用转换支持。 |
| CompositionViewBox |
表示将形状可视化树坐标映射到视觉对象的容器。 |
| CompositionVirtualDrawingSurface |
表示稀疏分配的位图,这些位图可与视觉对象相关联,以便在可视化树中组合。 |
| CompositionVisualSurface |
将可视化树表示为可用于使用 CompositionBrush 绘制视觉对象的 ICompositionSurface。 |
| Compositor |
管理应用程序与系统合成器进程之间的会话。 Compositor 类为应用程序创建 Compositor 的实例,该应用程序可用作跨视觉层、效果系统和动画系统的 Windows.UI.Composition 命名空间中各种类型的工厂。 Compositor 类还用于管理从工厂创建的对象的生存期。 |
| ContainerVisual |
可视化树中可以有子级的节点。 |
| CubicBezierEasingFunction |
表示用于在动画关键帧之间内插的立方贝塞尔函数。 cubic-bezier 函数是 用于 KeyFrameAnimation的更常见的缓动函数之一,经常用于描述可缩放的平滑曲线。 立方体-贝塞尔函数由两个定义曲线形状的 Vector2 类型的“控制点”定义。 使用时,动画属性将根据定义的曲线在两个关键帧之间更改。 |
| DistantLight |
在一个方向上发出光的无限远的光源。 例如,远光可用于表示阳光。 |
| DropShadow |
由 SpriteVisual 或 LayerVisual 投射的投影。 |
| ElasticEasingFunction |
表示缓动函数,创建一个类似于弹簧来回振动直到停止的动画。 |
| ExponentialEasingFunction |
表示一个缓动函数,该函数使用指数公式创建加速和/或减速的动画。 |
| ExpressionAnimation |
使用数学公式计算每帧动画属性的值的合成动画。 |
| ImplicitAnimationCollection |
满足条件时触发的动画集合。 |
| InitialValueExpressionCollection |
值的集合,这些值指定动画的开始位置。 |
| InsetClip |
表示剪裁视觉对象部分的矩形。 矩形内的视觉对象部分可见;剪裁矩形外的视觉对象部分。 |
| KeyFrameAnimation |
具有一个或多个关键帧的基于时间的动画。 这些帧是标记,使开发人员能够在特定时间为动画属性指定值。 通过指定动画在关键帧之间内插的方式,可以进一步自定义关键帧动画。 |
| LayerVisual |
其子级平展为单个层的 ContainerVisual。 |
| LinearEasingFunction |
表示用于在动画关键帧之间内插的线性函数。 |
| NaturalMotionAnimation |
表示基于物理的动画,该动画使用力动态移动内容。 |
| PathKeyFrameAnimation |
表示具有一个或多个关键帧的基于时间的动画,其中每个关键帧值由 CompositionPath 表示。 缓动指定路径之间的插接。 |
| PointLight |
一种点光源,可向所有方向发出光。 |
| PowerEasingFunction |
表示缓动函数,该函数使用公式 f (t) = tp 创建加速和/或减速的动画,其中 p 等于 |
| QuaternionKeyFrameAnimation |
以具有一个或多个关键帧的 Orientation 属性为目标的基于时间的动画。 QuaternionKeyFrameAnimation 类是受支持的 KeyFrameAnimation类型之一,用于对视觉对象上的 Orientation 属性进行动画处理。 四元数是一种有用且有时更简单的方式来考虑旋转 - 四元数采用角度之间的最短路径,并避免旋转角度/轴和旋转矩阵遇到 Gimbal Lock 之类的问题。 四元数由两个分量组成:标量部分和向量部分。 |
| RectangleClip |
表示具有可选圆角的矩形,该矩形剪裁了视觉对象的一部分。 矩形内的视觉对象部分可见;剪裁矩形外的视觉对象部分。 |
| RedirectVisual |
表示从另一个视觉对象获取其内容的视觉对象。 |
| RenderingDeviceReplacedEventArgs |
RenderingDeviceReplaced 事件的参数。 |
| ScalarKeyFrameAnimation |
一种基于时间的动画,以具有一个或多个关键帧的任何基于标量的属性为目标。 |
| ScalarNaturalMotionAnimation |
用于面向标量属性的基本标量 NaturalMotionAnimation。 |
| ShapeVisual |
表示作为 CompositionShape 根的可视化树节点。 |
| SineEasingFunction |
表示一个缓动函数,该函数使用正弦公式创建加速和/或减速的动画。 |
| SpotLight |
投射内锥和外锥光的光源。 例如,手电筒。 |
| SpringScalarNaturalMotionAnimation |
以任何基于标量的属性为目标的基于弹簧物理的动画。 |
| SpringVector2NaturalMotionAnimation |
以任何基于 Vector2 的属性为目标的基于弹簧物理的动画。 |
| SpringVector3NaturalMotionAnimation |
一个基于弹簧物理的动画,以任何基于 Vector3 的属性为目标。 |
| SpriteVisual |
托管 CompositionBrush 类型的 2D 装箱内容。 画笔中未覆盖像素的任何视觉对象部分都呈现为透明像素。 CompositionBrush 可以是 CompositionBackdropBrush、 CompositionColorBrush、 CompositionSurfaceBrush 或 CompositionEffectBrush。 |
| StepEasingFunction |
用于在动画关键帧之间内插的步骤函数。 以增量方式推进动画,例如可以定义的步骤。 可以自定义初始和最终步骤的行为。 |
| Vector2KeyFrameAnimation |
一种基于时间的动画,以具有一个或多个关键帧的任何基于 Vector2 的属性为目标。 |
| Vector2NaturalMotionAnimation |
用于面向 Vector2 属性的基 Vector2 NaturalMotionAnimation。 |
| Vector3KeyFrameAnimation |
一种基于时间的动画,该动画以具有一个或多个关键帧的任何基于 Vector3 的属性为目标。 |
| Vector3NaturalMotionAnimation |
用于面向 Vector3 属性的基 Vector3 NaturalMotionAnimation。 |
| Vector4KeyFrameAnimation |
一种基于时间的动画,该动画以具有一个或多个关键帧的任何基于 Vector4 的属性为目标。 |
| Visual |
视觉对象层次结构中的基础视觉对象。 |
| VisualCollection |
表示视觉对象实例的集合。 |
| VisualUnorderedCollection |
视觉对象的无序集合。 |
接口
| IAnimationObject |
表示一个对象,该对象具有可由动画引用的属性。 |
| ICompositionAnimationBase |
合成动画的基类。 |
| ICompositionSupportsSystemBackdrop |
提供一个属性,用于将 CompositionBrush 用作系统背景。 具有给定 CompositionBrush 的 SpriteVisual 将放置在实现对象的子树的后面。 |
| ICompositionSurface |
表示可用于绘制 边界的 |
| ICompositionSurfaceFacade |
表示可以像实际合成图面一样使用的合成图面的占位符。 |
| IVisualElement |
标记对象,以向系统指示它可以解析为合成 视觉对象 |
| IVisualElement2 |
提供检索对象的基础 视觉对象的方法。 |
枚举
注解
Windows.UI.Composition 概述、示例和已知问题
| 项 | 说明 |
|---|---|
| Windows.UI.Composition 概述 | API 概述和体系结构 |
| Windows.UI.Composition 示例 | 官方 Github 中的 API 示例 |
| 已知问题和最新信息 | MSDN 论坛中 API 的最新更新 |