Freigeben über


IDirectDrawSurface7::Blt-Methode (ddraw.h)

Führt eine Bitblockübertragung (Bitblt) durch. Diese Methode unterstützt bei Bitblt-Vorgängen keine Z-Pufferung oder Alphamischung.

Syntax

HRESULT Blt(
  [in] LPRECT               unnamedParam1,
  [in] LPDIRECTDRAWSURFACE7 unnamedParam2,
  [in] LPRECT               unnamedParam3,
  [in] DWORD                unnamedParam4,
  [in] LPDDBLTFX            unnamedParam5
);

Parameter

[in] unnamedParam1

Ein Zeiger auf eine RECT-Struktur , die die oberen linken und unteren rechten Punkte des Rechtecks definiert, auf die auf der Zieloberfläche bitbliert werden soll. Wenn dieser Parameter NULL ist, wird die gesamte Zieloberfläche verwendet.

[in] unnamedParam2

Ein Zeiger auf die IDirectDrawSurface7-Schnittstelle für das DirectDrawSurface-Objekt, das die Quelle des Bitblts ist.

[in] unnamedParam3

Ein Zeiger auf eine RECT-Struktur , die die oberen linken und unteren rechten Punkte des Rechtecks definiert, von der aus auf der Quelloberfläche bitbltiert werden soll. Wenn dieser Parameter NULL ist, wird die gesamte Quelloberfläche verwendet.

[in] unnamedParam4

Eine Kombination von Flags, die die gültigen Elemente der zugeordneten DDBLTFX-Struktur bestimmen, Farbschlüsselinformationen angeben oder spezielles Verhalten von der -Methode anfordern. Die folgenden Flags werden definiert:

Validierungsflags

DDBLT_COLORFILL

Verwendet das dwFillColor-Element der DDBLTFX-Struktur als RGB-Farbe, die das Zielrechteck auf der Zieloberfläche ausfüllt.

DDBLT_DDFX

Verwendet das dwDDFX-Element der DDBLTFX-Struktur , um die Effekte anzugeben, die für diese Bitblt verwendet werden sollen.

DDBLT_DDROPS

Verwendet das dwDDROP-Member der DDBLTFX-Struktur , um die Rastervorgänge (ROPS) anzugeben, die nicht Teil der Win32-API sind.

DDBLT_DEPTHFILL

Verwendet das dwFillDepth-Element der DDBLTFX-Struktur als Tiefenwert, mit dem das Zielrechteck auf der Ziel-Z-Pufferoberfläche gefüllt werden soll.

DDBLT_KEYDESTOVERRIDE

Verwendet das ddckDestColorkey-Element der DDBLTFX-Struktur als Farbtaste für die Zieloberfläche.

DDBLT_KEYSRCOVERRIDE

Verwendet das ddckSrcColorkey-Element der DDBLTFX-Struktur als Farbtaste für die Quelloberfläche.

DDBLT_ROP

Verwendet das dwROP-Element der DDBLTFX-Struktur für den ROP für diese Bitblt. Diese ROPs entsprechen den in der Win32-API definierten ROPs.

DDBLT_ROTATIONANGLE

Verwendet das dwRotationAngle-Element der DDBLTFX-Struktur als Drehwinkel (angegeben in 1/100s eines Grads) für die Oberfläche.

Farbschlüsselflaggen

DDBLT_KEYDEST

Verwendet die Farbtaste, die der Zieloberfläche zugeordnet ist.

DDBLT_KEYSRC

Verwendet die Farbtaste, die der Quelloberfläche zugeordnet ist.

Verhaltensflags

DDBLT_ASYNC

Führt diese Bitblt asynchron über die FIFO-Hardware (First In, First Out) in der empfangenen Reihenfolge aus. Wenn in der FIFO-Hardware kein Raum verfügbar ist, schlägt der Anruf fehl.

DDBLT_DONOTWAIT

Gibt ohne Bitbltting zurück und gibt auch DDERR_WASSTILLDRAWING zurück, wenn der Bitbltter ausgelastet ist.

DDBLT_WAIT

Verschiebt den DDERR_WASSTILLDRAWING Rückgabewert, wenn der Bitbltter ausgelastet ist, und gibt zurück, sobald die Bitblt eingerichtet werden kann oder ein anderer Fehler auftritt.

Veraltete und nicht unterstützte Flags

Alle DDBLT_ALPHA Flagwerte

Derzeit nicht implementiert.

Alle DDBLT_ZBUFFER Flagwerte

Diese Methode unterstützt derzeit keine z-fähigen Bitblt-Vorgänge. Keines der Flags, die mit "DDBLT_ZBUFFER" beginnen, wird unterstützt.

[in] unnamedParam5

Ein Zeiger auf die DDBLTFX-Struktur für die Bitblt.

Rückgabewert

Wenn die Methode erfolgreich ist, wird der Rückgabewert DD_OK.

Wenn ein Fehler auftritt, kann die Methode einen der folgenden Fehlerwerte zurückgeben:

  • DDERR_GENERIC
  • DDERR_INVALIDCLIPLIST
  • DDERR_INVALIDOBJECT
  • DDERR_INVALIDPARAMS
  • DDERR_INVALIDRECT
  • DDERR_NOALPHAHW
  • DDERR_NOBLTHW
  • DDERR_NOCLIPLIST
  • DDERR_NODDROPSHW
  • DDERR_NOMIRRORHW
  • DDERR_NORASTEROPHW
  • DDERR_NOROTATIONHW
  • DDERR_NOSTRETCHHW
  • DDERR_NOZBUFFERHW
  • DDERR_SURFACEBUSY
  • DDERR_SURFACELOST
  • DDERR_UNSUPPORTED
  • DDERR_WASSTILLDRAWING

Hinweise

Blt kann synchrone oder asynchrone Bitblts ausführen (letzteres ist das Standardverhalten). Diese Bitblts können vom Anzeigespeicher zum Anzeigespeicher, vom Anzeigespeicher zum Systemspeicher, vom Systemspeicher zum Anzeigespeicher oder vom Systemspeicher zum Systemspeicher auftreten. Die Bitblts können mithilfe von Quellfarbschlüsseln und Zielfarbschlüsseln ausgeführt werden. Wenn die Quell- und Zielrechtecke nicht die gleiche Größe aufweisen, wird ein beliebiges Dehnungs- oder Verkleinern ausgeführt.

In der Regel wird Blt sofort mit einem Fehler zurückgegeben, wenn der Bitbltter ausgelastet ist und die Bitblt nicht eingerichtet werden konnte. Geben Sie das flag DDBLT_WAIT an, um eine synchrone Bitblt anzufordern. Wenn Sie das DDBLT_WAIT-Flag einschließen, wartet Blt , bis die Bitblt eingerichtet werden kann oder ein anderer Fehler auftritt, bevor sie zurückgegeben wird.

RECT-Strukturen werden so definiert, dass die rechten und unteren Member exklusiv sind. Daher entspricht rechts minus links der Breite des Rechtecks, nicht 1 kleiner als die Breite.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile ddraw.h
Bibliothek Ddraw.lib
DLL Ddraw.dll

Weitere Informationen

IDirectDrawSurface7