структура D2D1_RENDER_TARGET_PROPERTIES (d2d1.h)
Содержит параметры отрисовки (оборудование или программное обеспечение), формат пикселей, сведения о DPI, параметры удаленного взаимодействия и требования к поддержке Direct3D для целевого объекта отрисовки.
Синтаксис
typedef struct D2D1_RENDER_TARGET_PROPERTIES {
D2D1_RENDER_TARGET_TYPE type;
D2D1_PIXEL_FORMAT pixelFormat;
FLOAT dpiX;
FLOAT dpiY;
D2D1_RENDER_TARGET_USAGE usage;
D2D1_FEATURE_LEVEL minLevel;
} D2D1_RENDER_TARGET_PROPERTIES;
Члены
type
Значение типа , указывающее, должен ли целевой объект отрисовки принудительно выполнять отрисовку оборудования или программного обеспечения. Значение D2D1_RENDER_TARGET_TYPE_DEFAULT указывает, что целевой объект отрисовки должен использовать аппаратную отрисовку, если она доступна; в противном случае используется программная отрисовка. Обратите внимание, что целевые объекты отрисовки точечного изображения WIC не поддерживают аппаратную отрисовку.
pixelFormat
Тип: D2D1_PIXEL_FORMAT
Формат пикселей и альфа-режим целевого объекта отрисовки. Функцию D2D1::P ixelFormat можно использовать для создания формата пикселей, указывающего, что Direct2D должен выбрать формат пикселей и альфа-режим. Список форматов пикселей и альфа-режимов, поддерживаемых каждым целевым объектом отрисовки, см. в разделе Поддерживаемые форматы пикселей и альфа-режимы.
dpiX
Тип: FLOAT
Горизонтальное разрешение целевого объекта отрисовки. Чтобы использовать значение DPI по умолчанию, задайте значение dpiX и dpiY равным 0. Дополнительные сведения см. в разделе «Примечания».
dpiY
Тип: FLOAT
Вертикальное разрешение целевого объекта отрисовки. Чтобы использовать значение DPI по умолчанию, задайте значение dpiX и dpiY равным 0. Дополнительные сведения см. в разделе «Примечания».
usage
Значение типа , указывающее, как удаленный целевой объект отрисовки и должен ли он быть совместимым с GDI. Задайте значение D2D1_RENDER_TARGET_USAGE_NONE , чтобы создать целевой объект отрисовки, несовместимый с GDI и использующий удаленное взаимодействие с командным потоком Direct3D, если он доступен.
minLevel
Тип: D2D1_FEATURE_LEVEL
Значение типа , указывающее минимальный уровень компонентов Direct3D, необходимый для аппаратной отрисовки. Если указанный минимальный уровень недоступен, целевой объект отрисовки использует программную отрисовку, если для элемента типа задано значение D2D1_RENDER_TARGET_TYPE_DEFAULT; Если для type задано значение D2D1_RENDER_TARGET_TYPE_HARDWARE, создание целевого объекта отрисовки завершается ошибкой. Значение D2D1_FEATURE_LEVEL_DEFAULT указывает, что Direct2D должен определить, является ли уровень функций Direct3D устройства адекватным. Это поле используется только при создании объектов ID2D1HwndRenderTarget и ID2D1DCRenderTarget .
Комментарии
Используйте эту структуру при создании целевого объекта отрисовки или с методом ID2D1RenderTarget::IsSupported для проверка свойств, поддерживаемых существующим целевым объектом отрисовки.
Для удобства Direct2D предоставляет вспомогательную функцию D2D1::RenderTargetProperties для создания D2D1_RENDER_TARGET_PROPERTIES структур. Простой способ создать структуру D2D1_RENDER_TARGET_PROPERTIES , которая работает для большинства целевых объектов отрисовки, — вызвать функцию без указания параметров. При этом создается структура D2D1_RENDER_TARGET_PROPERTIES , в полях которого заданы значения по умолчанию. Дополнительные сведения см. в разделе D2D1::RenderTargetProperties.
Не все целевые объекты отрисовки поддерживают аппаратную отрисовку. Список см. в разделе Общие сведения о целевых объектах отрисовки.
Использование параметров DPI по умолчанию
Чтобы использовать значение DPI по умолчанию, задайте значение dpiX и dpiY равным 0. Значение DPI по умолчанию зависит от целевого объекта отрисовки:- Для совместимого целевого объекта отрисовки по умолчанию используется разрешение родительского целевого объекта отрисовки.
- Для ID2D1HwndRenderTarget DPI по умолчанию является системным DPI, полученным из id2D1Factory целевого объекта отрисовки.
- Для других целевых объектов отрисовки значение по умолчанию — 96.
Примеры
В следующем примере используется функция D2D1::RenderTargetProperties для создания D2D1_RENDER_TARGET_PROPERTIES структуры, подходящей для большинства целевых объектов отрисовки.
RECT rc;
GetClientRect(m_hwnd, &rc);
D2D1_SIZE_U size = D2D1::SizeU(
rc.right - rc.left,
rc.bottom - rc.top
);
// Create a Direct2D render target.
hr = m_pD2DFactory->CreateHwndRenderTarget(
D2D1::RenderTargetProperties(),
D2D1::HwndRenderTargetProperties(m_hwnd, size),
&m_pRenderTarget
);
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 7, Windows Vista с пакетом обновления 2 (SP2) и обновлением платформы для Windows Vista [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2008 R2, Windows Server 2008 с пакетом обновления 2 (SP2) и Обновление платформы для Windows Server 2008 [классические приложения | Приложения UWP] |
Верхняя часть | d2d1.h |