Partager via


IDCompositionDevice2 ::CreateSurface, méthode (dcomp.h)

Crée un objet surface pouvant être mis à jour qui peut être associé à un ou plusieurs visuels pour la composition.

Syntaxe

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

Paramètres

[in] width

Type : UINT

Largeur de la surface, en pixels. Limité par le niveau de fonctionnalité du périphérique de rendu qui a été passé au moment de la création de l’appareil DirectComposition.

[in] height

Type : UINT

Hauteur de la surface, en pixels. Limité par le niveau de fonctionnalité du périphérique de rendu qui a été passé au moment de la création de l’appareil DirectComposition.

[in] pixelFormat

Type : DXGI_FORMAT

Format de pixel de la surface.

[in] alphaMode

Type : DXGI_ALPHA_MODE

Format du canal alpha, si un canal alpha est inclus dans le format de pixel. Ce peut être l’une des valeurs suivantes :

Valeur Signification
DXGI_ALPHA_MODE_UNSPECIFIED
Le canal alpha n’est pas spécifié. Cette valeur a le même effet que DXGI_ALPHA_MODE_IGNORE.
DXGI_ALPHA_MODE_PREMULTIPLIED
Les canaux de couleurs contiennent des valeurs qui sont prémultipliées avec le canal alpha.
DXGI_ALPHA_MODE_IGNORE
Le canal alpha doit être ignoré et la bitmap doit être rendue de manière opaque.

[out] surface

Type : IDCompositionSurface**

Objet surface nouvellement créé. Ce paramètre ne doit pas être NULL.

Valeur retournée

Type : HRESULT

Si la fonction réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT. Pour obtenir la liste des codes d’erreur, consultez Codes d’erreur DirectComposition .

Remarques

Une surface Microsoft DirectComposition est un tableau rectangulaire de pixels qui peut être associé à un visuel pour la composition.

Un objet surface nouvellement créé est dans un état non initialisé. Bien qu’elle soit non initialisée, la surface n’a aucun effet sur la composition de l’arborescence visuelle. Il se comporte exactement comme une surface qui a 100 % de pixels transparents.

Pour initialiser la surface avec des données de pixels, utilisez les méthodes IDCompositionSurface ::BeginDraw et IDCompositionSurface ::EndDraw . Le premier appel à cette méthode doit couvrir toute la surface d’exposition pour fournir une valeur initiale pour chaque pixel. Les appels suivants peuvent spécifier des sous-rectangles plus petits de la surface à mettre à jour.

Les surfaces DirectComposition prennent en charge les formats de pixels suivants :

  • DXGI_FORMAT_B8G8R8A8_UNORM
  • DXGI_FORMAT_R8G8B8A8_UNORM
  • DXGI_FORMAT_R16G16B16A16_FLOAT

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 8.1 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2012 R2 [applications de bureau uniquement]
Plateforme cible Windows
En-tête dcomp.h
Bibliothèque Dcomp.lib
DLL Dcomp.dll

Voir aussi

IDCompositionDevice2

IDCompositionDevice2 ::CreateVirtualSurface