iXpsOMGradientStop 接口 (xpsobjectmodel.h)
表示渐变中的单个颜色和位置。
继承
IXpsOMGradientStop 接口继承自 IUnknown 接口。 IXpsOMGradientStop 还具有以下类型的成员:
方法
IXpsOMGradientStop 接口具有以下方法。
IXpsOMGradientStop::Clone 创建 IXpsOMGradientStop 接口的深层副本。 |
IXpsOMGradientStop::GetColor 获取渐变停止点的颜色值和颜色配置文件。 |
IXpsOMGradientStop::GetOffset 获取渐变停止点的偏移值。 |
IXpsOMGradientStop::GetOwner 获取指向包含渐变停止点的 IXpsOMGradientBrush 接口的指针。 |
IXpsOMGradientStop::SetColor 设置渐变停止点的颜色值和颜色配置文件。 |
IXpsOMGradientStop::SetOffset 设置渐变停止点的偏移位置。 |
注解
渐变停止点是为渐变区域内的位置定义的特定颜色。 渐变的颜色在渐变的渐变停止点之间变化。 渐变的面积和绝对位置由渐变接口定义。 偏移量是渐变区域内的相对位置,在 0.0 到 1.0 之间测量。 偏移量 0.0 是渐变的开始,1.0 是结束。 可以为范围内的任何偏移量定义渐变停点,包括终点。 此接口描述渐变中的一个且唯一的一个光圈。
渐变路径是连接线性渐变起点和终点的直线。 线性渐变的渐变区域由起点和终点之间的区域(包括这些点)组成,并且以与渐变路径的直角向两个方向扩展。 传播区域是渐变区域之外的区域。
渐变停点定义沿渐变路径的特定位置的颜色;颜色沿渐变停止点之间的渐变路径内插。 在下面的示例中,渐变区域填充图像,因此没有分布区域。
对于线性渐变画笔中使用的渐变停止点,偏移值 0.0 对应于渐变路径的起点,偏移值 1.0 对应于终点。 为了确定这两个点之间的渐变停止点的位置,中间偏移值在它们之间进行内插。 下图显示了两个中间渐变停止点,一个偏移量为 0.25,另一个偏移量为 0.75。
对于径向渐变画笔中使用的渐变停点,偏移值 0.0 对应于渐变原点位置,偏移值 1.0 对应于边界渐变的椭圆的周长。 介于 0.0 和 1.0 之间的偏移量定义在渐变原点和边界椭圆之间内插的椭圆。 下图有一个中间渐变停止点,偏移量为 0.50 (渐变停止点 1) 。 渐变使用 XPS_SPREAD_METHOD_REFLECT 传播方法来填充渐变区域外部的空间。
XML 纸张规范中介绍了用于呈现渐变的计算。下面的代码示例演示了如何创建此接口的实例。
IXpsOMGradientStop *newInterface;
// The following values are defined outside of
// this example.
// XPS_COLOR color;
// IXpsOMColorProfileResource *colorProfile;
// FLOAT offset;
// Note the implicit requirement that CoInitializeEx
// has previously been called from this thread.
hr = CoCreateInstance(
__uuidof(XpsOMObjectFactory),
NULL,
CLSCTX_INPROC_SERVER,
_uuidof(IXpsOMObjectFactory),
reinterpret_cast<LPVOID*>(&xpsFactory)
);
if (SUCCEEDED(hr))
{
hr = xpsFactory->CreateGradientStop (
&color,
colorProfile,
offset,
&newInterface);
if (SUCCEEDED(hr))
{
// use newInterface
newInterface->Release();
}
xpsFactory->Release();
}
else
{
// evaluate HRESULT error returned in hr
}
要求
最低受支持的客户端 | Windows 7、带 SP2 的 Windows Vista 和适用于 Windows Vista 的平台更新 [桌面应用 |UWP 应用] |
最低受支持的服务器 | Windows Server 2008 R2、Windows Server 2008 SP2 和适用于 Windows Server 2008 的平台更新 [桌面应用 |UWP 应用] |
目标平台 | Windows |
标头 | xpsobjectmodel.h |