Compartir a través de


Método IDCompositionSurfaceFactory::CreateSurface (dcomp.h)

Crea un objeto de superficie que se puede asociar a uno o varios objetos visuales para la composición.

Sintaxis

HRESULT CreateSurface(
  [in]  UINT                 width,
  [in]  UINT                 height,
  [in]  DXGI_FORMAT          pixelFormat,
  [in]  DXGI_ALPHA_MODE      alphaMode,
  [out] IDCompositionSurface **surface
);

Parámetros

[in] width

Ancho de la superficie, en píxeles.

[in] height

Alto de la superficie, en píxeles.

[in] pixelFormat

Formato de píxel de la superficie.

[in] alphaMode

El formato del canal alfa, si se incluye un canal alfa en formato de píxel. Puede ser uno de DXGI_ALPHA_MODE_PREMULTIPLIED o DXGI_ALPHA_MODE_IGNORE. También puede ser DXGI_ALPHA_MODE_UNSPECIFIED, que se interpreta como DXGI_ALPHA_MODE_IGNORE.

[out] surface

Objeto de superficie recién creado. Este parámetro no debe ser null.

Valor devuelto

Si la función se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT. Consulte Códigos de error de DirectComposition para obtener una lista de códigos de error.

Comentarios

Una superficie de Microsoft DirectComposition es una matriz rectangular de píxeles que se puede asociar a un objeto visual para la composición.

Un objeto de superficie recién creado está en un estado no inicializado. Aunque no está inicializado, la superficie no tiene ningún efecto en la composición del árbol visual. Se comporta exactamente como una superficie que tiene un 100 % de píxeles transparentes.

Para inicializar la superficie con datos de píxeles, use el método IDCompositionSurface::BeginDraw . La primera llamada a este método debe cubrir todo el área expuesta para proporcionar un valor inicial para cada píxel. Las llamadas posteriores pueden especificar subctángulos más pequeños de la superficie que se van a actualizar.

Este método producirá un error si el ancho o alto superan el tamaño máximo de textura. Si el escenario requiere dimensiones más allá del tamaño máximo de textura, use el método CreateVirtualSurface .

Las superficies DirectComposition admiten los siguientes formatos de píxeles:

  • DXGI_FORMAT_B8G8R8A8_UNORM
  • DXGI_FORMAT_R8G8B8A8_UNORM
  • DXGI_FORMAT_R16G16B16A16_FLOAT

Requisitos

   
Cliente mínimo compatible Windows 8.1 [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2012 R2 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado dcomp.h
Library Dcomp.lib
Archivo DLL Dcomp.dll

Consulte también

IDCompositionDevice2::CreateSurface

IDCompositionDevice2::CreateVirtualSurface

IDCompositionSurfaceFactory

IDCompositionSurfaceFactory::CreateVirtualSurface