共用方式為


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 Apartment (STA) 物件;請勿重新輸入。
 
謹慎 此資料流程不會模糊化。
 

[in] fontEmbedding

指定資料流程內嵌選項 的XPS_FONT_EMBEDDING 值。

[in] partUri

IOpcPartUri介面,其中包含要指派給此資源的元件名稱。 此參數不得為 Null

[in] isObfSourceStream

布林值,指出 acquiredStream 所參考的資料流程是否模糊化。

意義
acquiredStream所參考的資料流程會模糊化。
取得的Stream所參考的資料流程不會模糊化。

[out, retval] fontResource

IXpsOMFontResource 介面的指標。

傳回值

方法會傳回 HRESULT。 可能的值包括下列資料表中的值,但不限於這些值。 如需此表格中未列出的 XPS 檔 API 傳回值的相關資訊,請參閱 XPS 檔錯誤

傳回碼 描述
S_OK
此方法已成功。
E_INVALIDARG
發生下列其中一個錯誤:
E_POINTER
acquiredStreampartUrifontResourceNull

備註

isObfSourceStream的值描述建立字型資源時取得的Stream參考資料流狀態。 所有對 GetStreamSetContent 的後續呼叫都會在 IStream的未處理版本上運作。

如果 isObfSourceStream 設定為 TRUEfontEmbedding 設定為 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 Vista 的 Windows 7、Windows Vista SP2 和平臺更新 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2008 R2、Windows Server 2008 SP2 和 Platform Update for Windows Server 2008 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 xpsobjectmodel.h

另請參閱

IOpcPartUri

IXpsOMFontResource

IXpsOMObjectFactory

XML Paper Specification

XPS 檔錯誤

XPS_FONT_EMBEDDING