IDCompositionDevice::CreateSurface-Methode (dcomp.h)
Erstellt ein aktualisierbares Surface-Objekt, das einem oder mehreren Visuals für die Komposition zugeordnet werden kann.
Syntax
HRESULT CreateSurface(
[in] UINT width,
[in] UINT height,
[in] DXGI_FORMAT pixelFormat,
[in] DXGI_ALPHA_MODE alphaMode,
[out] IDCompositionSurface **surface
);
Parameter
[in] width
Typ: UINT
Die Breite der Oberfläche in Pixel.
[in] height
Typ: UINT
Die Höhe der Oberfläche in Pixel.
[in] pixelFormat
Typ: DXGI_FORMAT
Das Pixelformat der Oberfläche.
[in] alphaMode
Typ: DXGI_ALPHA_MODE
Das Format des Alphakanals, wenn ein Alphakanal im Pixelformat enthalten ist. Es kann sich um einen der folgenden Werte handeln:
Wert | Bedeutung |
---|---|
DXGI_ALPHA_MODE_UNSPECIFIED | Der Alphakanal ist nicht angegeben. Dieser Wert hat die gleiche Auswirkung wie DXGI_ALPHA_MODE_IGNORE. |
DXGI_ALPHA_MODE_PREMULTIPLIED | Die Farbkanäle enthalten Werte, die mit dem Alphakanal vormultipliziert sind. |
DXGI_ALPHA_MODE_IGNORE | Der Alphakanal sollte ignoriert werden, und die Bitmap sollte undurchsichtig gerendert werden. |
[out] surface
Typ: IDCompositionSurface**
Das neu erstellte Surface-Objekt. Dieser Parameter darf nicht NULL sein.
Rückgabewert
Typ: HRESULT
Wenn die Funktion erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein Fehlercode HRESULT zurückgegeben. Eine Liste der Fehlercodes finden Sie unter DirectComposition-Fehlercodes .
Bemerkungen
Eine Microsoft DirectComposition-Oberfläche ist ein rechteckiges Array von Pixeln, die einem Visual für die Komposition zugeordnet werden können.
Ein neu erstelltes Oberflächenobjekt befindet sich in einem nicht initialisierten Zustand. Obwohl sie nicht initialisiert ist, hat die Oberfläche keine Auswirkungen auf die Zusammensetzung der visuellen Struktur. Es verhält sich genau wie eine Oberfläche mit 100 % transparenten Pixeln.
Um die Oberfläche mit Pixeldaten zu initialisieren, verwenden Sie die IDCompositionSurface::BeginDraw-Methode . Der erste Aufruf dieser Methode muss die gesamte Oberfläche abdecken, um einen Anfangswert für jedes Pixel bereitzustellen. Nachfolgende Aufrufe können kleinere Unterrechtecke der zu aktualisierenden Oberfläche angeben.
DirectComposition-Oberflächen unterstützen die folgenden Pixelformate:
- DXGI_FORMAT_B8G8R8A8_UNORM
- DXGI_FORMAT_R8G8B8A8_UNORM
- DXGI_FORMAT_R16G16B16A16_FLOAT
Anforderungen
Unterstützte Mindestversion (Client) | Windows 8 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2012 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | dcomp.h |
Bibliothek | Dcomp.lib |
DLL | Dcomp.dll |