ID3DXFont::D rawText-Methode

Zeichnet formatierten Text. Diese Methode unterstützt ANSI- und Unicode-Zeichenfolgen.

Syntax

INT DrawText(
  [in] LPD3DXSPRITE pSprite,
  [in] LPCTSTR      pString,
  [in] INT          Count,
  [in] LPRECT       pRect,
  [in] DWORD        Format,
  [in] D3DCOLOR     Color
);

Parameter

pSprite [ In]

Typ: LPD3DXSPRITE

Zeiger auf ein ID3DXSprite-Objekt, das die Zeichenfolge enthält. Kann NULL sein. In diesem Fall rendert Direct3D die Zeichenfolge mit einem eigenen Sprite-Objekt. Um die Effizienz zu verbessern, sollte ein Sprite-Objekt angegeben werden, wenn DrawText mehr als einmal in einer Zeile aufgerufen werden soll.

pString [ In]

Typ: LPCTSTR

Zeiger auf eine zu zeichnende Zeichenfolge. Wenn der Count-Parameter -1 ist, muss die Zeichenfolge null-terminiert sein.

Anzahl [ In]

Typ: INT

Gibt die Anzahl von Zeichen in der Zeichenfolge an. Wenn Count -1 ist, wird angenommen, dass der pString-Parameter ein Zeiger auf eine auf NULL terminierte Zeichenfolge ist, und DrawText berechnet die Zeichenanzahl automatisch.

pRect [ In]

Typ: LPRECT

Zeiger auf eine RECT-Struktur, die das Rechteck in logischen Koordinaten enthält, in dem der Text formatiert werden soll. Der Koordinatenwert der rechten Seite des Rechtecks muss größer als der wert der linken Seite sein. Ebenso muss der Koordinatenwert des unteren -Werts größer als der des oberen Werts sein.

Formatieren [ In]

Typ: DWORD

Gibt die Methode zum Formatieren des Texts an. Dies kann eine beliebige Kombination der folgenden Werte sein:

Wert Bedeutung
DT _ BOTTOM
Gerechtfertigt den Text am unteren Rand des Rechtecks. Dieser Wert muss mit DT _ SINGLELINE kombiniert werden.
DT _ CALCRECT
Bestimmt die Breite und Höhe des Rechtecks. Wenn mehrere Textzeilen enthalten sind, verwendet DrawText die Breite des Rechtecks, auf das der pRect-Parameter zeigt, und erweitert die Basis des Rechtecks so, dass die letzte Textzeile gebunden wird. Wenn nur eine Textzeile enthalten ist, ändert DrawText die rechte Seite des Rechtecks so, dass es das letzte Zeichen in der Zeile umgibt. In beiden Fällen gibt DrawText die Höhe des formatierten Texts zurück, aber nicht den Text.
DT _ CENTER
Centert Text horizontal im Rechteck.
DT _ EXPANDTABS
Erweitert Tabstoppzeichen. Die Standardanzahl von Zeichen pro Tabstopp beträgt acht.
DT _ LEFT
Richtet Text links aus.
DT _ NOCLIP
Zeichnet ohne Clipping. DrawText ist etwas schneller, wenn DT _ NOCLIP verwendet wird.
DT _ RIGHT
Richtet Text rechts aus.
DT _ RTLREADING
Zeigt Text in der Leserichtung von rechts nach links für bidirektionalen Text an, wenn eine hebräische oder arabische Schriftart ausgewählt ist. Die Standardlese reihenfolge für den text-Text ist von links nach rechts.
DT _ SINGLELINE
Zeigt nur Text in einer einzelnen Zeile an. Wagenrücklauf und Zeilenfeeds unterbricht die Zeile nicht.
DT _ TOP
Der Text wird am anfang gerechtfertigt.
DT _ VCENTER
Centert Text vertikal (nur eine Zeile).
DT _ WORDBREAK
Unterbricht Wörter. Zeilen werden automatisch zwischen Wörtern unterbrochen, wenn sich ein Wort über den Rand des Rechtecks erstreckt, das durch den pRect-Parameter angegeben wird. Eine Wagenrücklauf-/Zeilenfeedsequenz unterbricht auch die Zeile.

Farbe [ In]

Typ: D3DCOLOR

Farbe des Texts. Weitere Informationen finden Sie unter D3DCOLOR.

Rückgabewert

Typ: INT

Wenn die Funktion erfolgreich ist, ist der Rückgabewert die Höhe des Texts in logischen Einheiten. Wenn DT VCENTER oder DT BOTTOM angegeben ist, ist der Rückgabewert der Offset von pRect (von oben nach _ _ unten) des gezeichneten Texts. Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null.

Hinweise

Die Parameter dieser Methode sind denen der GDI DrawText-Funktion sehr ähnlich.

Diese Methode unterstützt sowohl ANSI- als auch Unicode-Zeichenfolgen.

Diese Methode muss innerhalb einer BeginScene... aufgerufen werden. EndScene-Block. Die einzige Ausnahme ist, wenn eine Anwendung DrawText mit DT CALCRECT aufruft, um die Größe eines _ bestimmten Textblocks zu berechnen.

Sofern nicht das DT NOCLIP-Format verwendet wird, schneide diese Methode den Text so ab, dass er nicht außerhalb des _ angegebenen Rechtecks angezeigt wird. Es wird davon ausgegangen, dass alle Formatierungen mehrere Zeilen haben, es sei denn, das DT _ SINGLELINE-Format ist angegeben.

Wenn die ausgewählte Schriftart zu groß für das Rechteck ist, versucht diese Methode nicht, eine kleinere Schriftart zu ersetzen.

Diese Methode unterstützt nur Schriftarten, deren Escape- und Ausrichtungsformat 0 (null) ist.

Anforderungen

Anforderung Wert
Header
D3dx9core.h
Bibliothek
D3dx9.lib

Weitere Informationen

ID3DXFont