Метод IDCompositionDevice::CreateSurface (dcomp.h)
Создает обновляемый объект surface, который может быть связан с одним или несколькими визуальными элементами для композиции.
Синтаксис
HRESULT CreateSurface(
[in] UINT width,
[in] UINT height,
[in] DXGI_FORMAT pixelFormat,
[in] DXGI_ALPHA_MODE alphaMode,
[out] IDCompositionSurface **surface
);
Параметры
[in] width
Тип: UINT
Ширина поверхности в пикселях.
[in] height
Тип: UINT
Высота поверхности в пикселях.
[in] pixelFormat
Тип: DXGI_FORMAT
Формат пикселей поверхности.
[in] alphaMode
Тип: DXGI_ALPHA_MODE
Формат альфа-канала, если альфа-канал включен в формат пикселей. Может иметь одно из следующих значений.
Значение | Значение |
---|---|
DXGI_ALPHA_MODE_UNSPECIFIED | Альфа-канал не указан. Это значение имеет тот же эффект, что и DXGI_ALPHA_MODE_IGNORE. |
DXGI_ALPHA_MODE_PREMULTIPLIED | Цветовые каналы содержат значения, которые предварительно связаны с альфа-каналом. |
DXGI_ALPHA_MODE_IGNORE | Альфа-канал следует игнорировать, а точечный рисунок должен отображаться непрозрачно. |
[out] surface
Тип: IDCompositionSurface**
Вновь созданный объект surface. Этот параметр не должен иметь значение NULL.
Возвращаемое значение
Тип: HRESULT
Если функция завершается успешно, она возвращает S_OK. В противном случае возвращается код ошибки HRESULT . Список кодов ошибок см. в разделе Коды ошибок DirectComposition .
Комментарии
Поверхность Microsoft DirectComposition — это прямоугольный массив пикселей, который можно связать с визуальным элементом для композиции.
Созданный объект surface находится в неинициализированном состоянии. Пока она не инициализирована, поверхность не влияет на состав визуального дерева. Он ведет себя точно так же, как поверхность с 100 % прозрачными пикселями.
Чтобы инициализировать поверхность пиксельными данными, используйте метод IDCompositionSurface::BeginDraw . Первый вызов этого метода должен охватывать всю поверхность, чтобы предоставить начальное значение для каждого пикселя. Последующие вызовы могут указывать небольшие под прямоугольники поверхности для обновления.
Поверхности DirectComposition поддерживают следующие форматы пикселей:
- DXGI_FORMAT_B8G8R8A8_UNORM
- DXGI_FORMAT_R8G8B8A8_UNORM
- DXGI_FORMAT_R16G16B16A16_FLOAT
Требования
Минимальная версия клиента | Windows 8 [только классические приложения] |
Минимальная версия сервера | Windows Server 2012 [только классические приложения] |
Целевая платформа | Windows |
Header | dcomp.h |
Библиотека | Dcomp.lib |
DLL | Dcomp.dll |