共用方式為


IXpsOMObjectFactory::CreateVisualBrush 方法 (xpsobjectmodel.h)

建立 IXpsOMVisualBrush 介面,這是使用視覺物件的 IXpsOMTileBrush

語法

HRESULT CreateVisualBrush(
  [in]          const XPS_RECT    *viewBox,
  [in]          const XPS_RECT    *viewPort,
  [out, retval] IXpsOMVisualBrush **visualBrush
);

參數

[in] viewBox

XPS_RECT 結構,指定要用於筆刷的來源影像區域。 此參數不得為 NULL

[in] viewPort

指定磚目的地幾何區域的 XPS_RECT 結構。 此參數不得為 NULL

[out, retval] visualBrush

IXpsOMVisualBrush 介面的 指標。

傳回值

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

傳回碼 描述
S_OK
此方法已成功。
E_POINTER
viewBoxviewPortvisualBrushNULL
E_INVALIDARG
viewBoxviewPort 包含無效的矩形或值。

備註

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


IXpsOMVisualBrush        *newInterface;

// 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->CreateVisualBrush (
        &viewBox,
        &viewPort,
        &newInterface);

    if (SUCCEEDED(hr))
    {
        // assign visual using one of the following:
        newInterface->SetVisualLocal (localVisual);
        // or
        newInterface->SetVisualLookup (visualLookupKey);
        // use newInterface

        newInterface->Release();
    }
    xpsFactory->Release();
}
else
{
    // evaluate HRESULT error returned in hr
}
// use newInterface

newInterface->Release();
xpsFactory->Release();


規格需求

需求
最低支援的用戶端 適用於 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

IXpsOMVisualBrush

XML Paper Specification

XPS 檔案錯誤