IXpsOMObjectFactory::CreateGradientStop 方法 (xpsobjectmodel.h)
创建 IXpsOMGradientStop 接口以表示渐变中的单个颜色和位置定义。
语法
HRESULT CreateGradientStop(
[in] const XPS_COLOR *color,
[in] IXpsOMColorProfileResource *colorProfile,
[in] FLOAT offset,
[out, retval] IXpsOMGradientStop **gradientStop
);
参数
[in] color
颜色值。
[in] colorProfile
指向包含要使用的颜色配置文件的 IXpsOMColorProfileResource 接口的指针。 如果未 XPS_COLOR_TYPE_CONTEXT颜色类型,则此参数必须为 NULL。
[in] offset
偏移值。
有效范围:0.0–1.0
[out, retval] gradientStop
指向新 IXpsOMGradientStop 接口的 指针。
返回值
该方法返回 HRESULT。 可能的值包括但不限于下表中的值。 有关此表中未列出的 XPS 文档 API 返回值的信息,请参阅 XPS 文档错误。
返回代码 | 说明 |
---|---|
|
方法成功。 |
|
偏移量中的值无效。 |
|
color 或 gradientStop 为 NULL。 |
|
colorProfile 为 NULL ,但需要颜色配置文件。 当颜色类型 为XPS_COLOR_TYPE_CONTEXT时,需要颜色配置文件。 |
|
colorProfile 不指向已识别的接口实现。 不支持 XPS 文档 API 接口的自定义实现。 |
|
colorProfile 包含颜色配置文件,但不需要一个。 仅当颜色类型为 XPS_COLOR_TYPE_CONTEXT时,才允许使用颜色配置文件。 |
注解
渐变停点用于定义特定位置的颜色;颜色在渐变停止点之间内插。 偏移量(由 偏移量指定)是渐变起点和终点之间的相对位置。 线性渐变起点或径向渐变原点的偏移量为 0.0。 线性渐变的终点或径向渐变的边界椭圆的偏移量为 1.0。 可以为这些点之间的任何偏移量指定渐变停止点,包括起点和终点。 下图显示了线性渐变的渐变路径和渐变停止点。
下图显示了径向渐变的渐变停止点。 在此示例中,径向渐变区域是外椭圆包围的区域, XPS_SPREAD_METHOD_REFLECT 分布方法用于填充渐变区域外部的空间。 IXpsOMGradientStop 接口指定渐变中的一个且唯一的一个停止点。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 |