GetTextExtentExTentExPointI-Funktion (wingdi.h)

Die GetTextExtentExPointI-Funktion ruft die Anzahl von Zeichen in einer angegebenen Zeichenfolge ab, die in ein angegebenes Leerzeichen passen, und füllt ein Array mit dem Textumfang für jedes dieser Zeichen. (Eine Textausdehnung ist der Abstand zwischen dem Anfang des Leerzeichens und einem Zeichen, das in das Leerzeichen passt.) Diese Informationen sind für Berechnungen mit Wortumbruch nützlich.

Syntax

BOOL GetTextExtentExPointI(
  [in]  HDC    hdc,
  [in]  LPWORD lpwszString,
  [in]  int    cwchString,
  [in]  int    nMaxExtent,
  [out] LPINT  lpnFit,
  [out] LPINT  lpnDx,
  [out] LPSIZE lpSize
);

Parameter

[in] hdc

Ein Handle für den Gerätekontext.

[in] lpwszString

Ein Zeiger auf ein Array von Glyphenindizes, für das Ausdehnungen abgerufen werden sollen.

[in] cwchString

Die Anzahl der Glyphen im Array, auf die der pgiIn-Parameter verweist.

[in] nMaxExtent

Die maximal zulässige Breite der formatierten Zeichenfolge in logischen Einheiten.

[out] lpnFit

Ein Zeiger auf eine ganze Zahl, die eine Anzahl der maximalen Zeichen empfängt, die in den durch den nMaxExtent-Parameter angegebenen Leerraum passen. Wenn der lpnFit-ParameterNULL ist, wird der nMaxExtent-Parameter ignoriert.

[out] lpnDx

Ein Zeiger auf ein Array ganzzahliger Zahlen, das partielle Glyphenausdehnungen empfängt. Jedes Element im Array gibt in logischen Einheiten den Abstand zwischen dem Anfang des Glyphenindizesarrays und einer der Glyphen an, die in den durch den nMaxExtent-Parameter angegebenen Raum passt. Obwohl dieses Array mindestens so viele Elemente wie Glyphenindizes aufweisen sollte, die durch den cgi-Parameter angegeben werden, füllt die Funktion das Array nur für so viele Glyphenindizes mit Ausdehnungen, wie vom lpnFit-Parameter angegeben sind. Wenn lpnFitNULL ist, berechnet die Funktion keine teiligen Zeichenfolgenbreiten.

[out] lpSize

Ein Zeiger auf eine SIZE-Struktur , die die Dimensionen des Glyphenindizesarrays in logischen Einheiten empfängt. Dieser Wert darf nicht NULL sein.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.

Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null.

Hinweise

Wenn sowohl die Parameter lpnFit als auch alpDxNULL sind, entspricht das Aufrufen der GetTextExtentExtentExPointI-Funktion dem Aufrufen der GetTextExtentPointI-Funktion .

Wenn diese Funktion den Textumfang zurückgibt, wird davon ausgegangen, dass der Text horizontal ist, d. h., dass die Escape immer 0 ist. Dies gilt sowohl für die horizontalen als auch für die vertikalen Messungen des Texts. Auch wenn Sie eine Schriftart verwenden, die eine nonzero-Escape angibt, verwendet diese Funktion nicht den Winkel, während sie die Textausdehnung berechnet. Die App muss sie explizit konvertieren. Wenn der Grafikmodus jedoch auf GM_ADVANCED festgelegt ist und die Zeichenausrichtung 90 Grad von der Druckausrichtung entfernt ist, entsprechen die von dieser Funktion zurückgegebenen Werte dieser Regel nicht. Wenn die Zeichenausrichtung und die Druckausrichtung für eine bestimmte Zeichenfolge übereinstimmen, gibt diese Funktion die Dimensionen der Zeichenfolge in der SIZE-Struktur als { cx : 116, cy : 18 }zurück. Wenn die Zeichenausrichtung und die Druckausrichtung für dieselbe Zeichenfolge 90 Grad voneinander entfernt sind, gibt diese Funktion die Dimensionen der Zeichenfolge in der SIZE-Struktur als { cx : 18, cy : 116 } zurück.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile wingdi.h (einschließlich Windows.h)
Bibliothek Gdi32.lib
DLL Gdi32.dll

Weitere Informationen

Schriftart- und Textfunktionen

Übersicht über Schriftarten und Text

GetTextExtentPoint

SIZE