IXpsOMObjectFactory::CreateFontResource 方法 (xpsobjectmodel.h)
创建 IXpsOMFontResource 接口,该接口为字体资源提供 IStream 接口。
语法
HRESULT CreateFontResource(
[in] IStream *acquiredStream,
[in] XPS_FONT_EMBEDDING fontEmbedding,
[in] IOpcPartUri *partUri,
[in] BOOL isObfSourceStream,
[out, retval] IXpsOMFontResource **fontResource
);
参数
[in] acquiredStream
要与此字体资源关联的只读 IStream 接口。 此参数不得为 NULL。
重要 将此流视为 Single-Threaded 单元 (STA) 对象;不要重新输入。
谨慎 此流不会被模糊处理。
[in] fontEmbedding
XPS_FONT_EMBEDDING值,该值指定流的嵌入选项。
[in] partUri
包含要分配给此资源的部件名称的 IOpcPartUri 接口。 此参数不得为 NULL。
[in] isObfSourceStream
一个布尔值,指示是否对 acquiredStream 引用的流进行模糊处理。
值 | 含义 |
---|---|
|
对 acquiredStream 引用的流进行模糊处理。 |
|
acquiredStream 引用的流不会被模糊处理。 |
[out, retval] fontResource
指向新 IXpsOMFontResource 接口的指针。
返回值
该方法返回 HRESULT。 可能的值包括但不限于下表中的值。 有关此表中未列出的 XPS 文档 API 返回值的信息,请参阅 XPS 文档错误。
返回代码 | 说明 |
---|---|
|
方法成功。 |
|
发生以下错误之一:
|
|
acquiredStream、 partUri 或 fontResource 为 NULL。 |
注解
isObfSourceStream 的值描述创建字体资源时,acquiredStream 引用的流的状态。 对 GetStream 或 SetContent 的所有后续调用都将在 IStream 的未obfuscat 版本上运行。
如果 isObfSourceStream 设置为 TRUE 且 fontEmbedding 设置为 XPS_FONT_EMBEDDING_NORMAL,或者 partUri 引用的名称不符合模糊处理的流的语法,则返回错误。
下面的代码示例演示了如何使用此方法创建新接口。
IXpsOMFontResource *newInterface;
IOpcPartUri *partUri;
// 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))
{
// The partUriString and acquiredStream variables
// are defined outside of this example.
hr = xpsFactory->CreatePartUri(partUriString, &partUri);
if (SUCCEEDED(hr))
{
hr = xpsFactory->CreateFontResource (
acquiredStream,
XPS_FONT_EMBEDDING_NORMAL, // normal
partUri,
FALSE, // not obfuscated
&newInterface);
if (SUCCEEDED(hr))
{
// use newInterface
newInterface->Release();
}
partUri->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 |