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


Метод IXpsRasterizationFactory::CreateRasterizer (xpsrassvc.h)

Метод CreateRasterize создает объект растратора XPS.

Синтаксис

HRESULT CreateRasterizer(
  [in, optional]  IXpsOMPage            *xpsPage,
  [in]            FLOAT                 DPI,
  [in]            XPSRAS_RENDERING_MODE nonTextRenderingMode,
  [in]            XPSRAS_RENDERING_MODE textRenderingMode,
  [out, optional] IXpsRasterizer        **ppIXPSRasterizer
);

Параметры

[in, optional] xpsPage

Указатель на объект IXpsOMPage, представляющий отрисовку фиксированной страницы XPS. Этот объект инкапсулирует раздел FixedPage из документа XPS. Дополнительные сведения см. в IXpsOMPage.

[in] DPI

Точки на дюйм в растровых выходных данных. Этот параметр применяется как к измерениям x, так и y выходного растрового изображения. Значение DPI — это разрешение устройства, которое предназначено для печати или отображения фиксированной страницы XPS.

[in] nonTextRenderingMode

Режим отрисовки для нетекстовых элементов в растровых выходных данных. Этот параметр указывает, следует ли создавать антиалиасированные выходные данные. Задайте для этого параметра одно из следующих значений перечисления XPSRAS_RENDERING_MODE:

  • XPSRAS_RENDERING_MODE_ANTIALIASED

  • XPSRAS_RENDERING_MODE_ALIASED

[in] textRenderingMode

Режим отрисовки для текста в растровых выходных данных. Этот параметр указывает, следует ли создавать антиалиасированные выходные данные. Задайте для этого параметра одно из следующих значений перечисления XPSRAS_RENDERING_MODE:

  • XPSRAS_RENDERING_MODE_ANTIALIASED

  • XPSRAS_RENDERING_MODE_ALIASED

[out, optional] ppIXPSRasterizer

Этот параметр указывает на расположение, в которое метод записывает указатель на интерфейс IXpsRasterizer созданного объекта растратора XPS. Если метод завершается ошибкой, он записывает NULL в это расположение и возвращает код ошибки.

Возвращаемое значение

CreateRasterizer возвращает S_OK, если вызов выполнен успешно. В противном случае метод возвращает код ошибки.

Возможные значения возвращаемых ошибок:

Возвращаемый код Описание
E_POINTER Параметр xpsPage или ppIXPSRasterizerNULL
E_INVALIDARG Параметр nonTextRenderingMode или textRenderingMode не является допустимым значением перечисления XPSRAS_RENDERING_MODE.
E_OUTOFMEMORY Вне памяти

Замечания

Этот метод поддерживается в Windows 7 и более поздних версиях.

Как правило, фильтр XPSDrv в конвейере XPS вызывает этот метод для получения растризатора XPS. Затем он использует растризатор для растеризации фиксированной страницы XPS, инкапсулированной объектом, к которому параметр xpsPage точек.

Параметр DPI указывает разрешение принтера, которое, как предполагается, совпадает с горизонтальными и вертикальными измерениями. Ширина и высота фиксированной страницы XPS, которую можно получить из метода IXpsOMPage::GetPageDimensions, выражаются в 1/96 дюймовых единицах. Умножьте эти значения ширины и высоты на DPI/96, чтобы определить ширину и высоту в пикселях растровой страницы. Дополнительные сведения о IXpsOMPage::GetPageDimensionsсм. в IXpsOMPage. Дополнительные сведения о том, как объект растризатора XPS использует значение DPI, см. в разделе IXpsRasterizer::RasterizeRect.

В случае успешного выполнения метод создает объект растризатора XPS и передает вызывающей объекту подсчитаную ссылку на интерфейса IXpsRaster izer объекта. Если объект больше не нужен, вызывающий объект отвечает за освобождение объекта путем вызова метода Release в интерфейсе IXpsRaster izer объекта.

Если метод завершается ошибкой и ppIXPSRasterizer не являетсяNULL, метод задает *ppIXPSRasterizer = NULL.

Пример кода, который вызывает метод CreateRasterizer, см. в примере XPSRasFilter в WDK. Этот пример расположен в папке Src\Print\Xpsrasfilter в установке WDK.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно в Windows 7 и более поздних версиях операционной системы Windows.
целевая платформа Настольный
заголовка xpsrassvc.h

См. также

IXpsRasterizationFactory

IXpsRasterizer

IXpsRasterizer::RasterizeRect

XPSRAS_RENDERING_MODE