Поделиться через


Метод 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. Возможные значения включают, помимо прочего, значения в следующей таблице. Сведения о возвращаемых значениях API документов XPS, не перечисленных в этой таблице, см. в статье Ошибки документа XPS.

Код возврата Описание
S_OK
Метод выполнен успешно.
E_POINTER
viewBox, viewPort или visualBrush имеет значение NULL.
E_INVALIDARG
viewBox или viewPort содержит недопустимый прямоугольник или значение.

Комментарии

В следующем примере кода показано, как этот метод используется для создания нового интерфейса.


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 7, Windows Vista с пакетом обновления 2 (SP2) и обновлением платформы для Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 R2, Windows Server 2008 с пакетом обновления 2 (SP2) и Обновление платформы для Windows Server 2008 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header xpsobjectmodel.h

См. также раздел

IXpsOMObjectFactory

IXpsOMVisualBrush

XPS

Ошибки документа XPS