共用方式為


IXpsOMObjectFactory::CreatePageReference 方法 (xpsobjectmodel.h)

建立可啟用頁面虛擬化的 IXpsOMPageReference 介面。

語法

HRESULT CreatePageReference(
  [in]          const XPS_SIZE      *advisoryPageDimensions,
  [out, retval] IXpsOMPageReference **pageReference
);

參數

[in] advisoryPageDimensions

設定諮詢頁面維度 (頁面寬度和頁面高度) XPS_SIZE 結構。

大小會以 XPS 單位描述。 每英吋 96 個 XPS 單位。 例如,8.5 x 11.0 英吋頁面的維度為816 x 1,056 XPS單位。

[out, retval] pageReference

IXpsOMPageReference 介面的指標。

傳回值

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

傳回碼 描述
S_OK
此方法已成功。
E_POINTER
advisoryPageDimensionspageReferenceNULL
XPS_E_INVALID_PAGE_SIZE
advisoryPageDimensions 包含無效的頁面大小或無效的頁面大小值。

備註

使用頁面參考可讓您延遲載入頁面的完整物件模型,直到明確要求載入為止。 如果頁面尚未變更,則可以在要求時卸除。

下列程式代碼範例說明如何使用此方法來建立新的介面。


IXpsOMPageReference    *newInterface;
// The following value is defined outside of 
// this example.
XPS_SIZE        advisoryPageDimensions;

// 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->CreatePageReference (
        &advisoryPageDimensions,
        &newInterface);

    if (SUCCEEDED(hr))
    {
        // use newInterface

        newInterface->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

另請參閱

IXpsOMObjectFactory

IXpsOMPageReference

XML Paper Specification

XPS 檔案錯誤

XPS_SIZE