GetCharABCWidthsA-Funktion (wingdi.h)

Die GetCharABCWidths-Funktion ruft die Breite aufeinanderfolgender Zeichen in logischen Einheiten in einem angegebenen Bereich aus der aktuellen TrueType-Schriftart ab. Diese Funktion ist nur mit TrueType-Schriftarten erfolgreich.

Syntax

BOOL GetCharABCWidthsA(
  [in]  HDC   hdc,
  [in]  UINT  wFirst,
  [in]  UINT  wLast,
  [out] LPABC lpABC
);

Parameter

[in] hdc

Ein Handle für den Gerätekontext.

[in] wFirst

Das erste Zeichen in der Gruppe aufeinanderfolgender Zeichen aus der aktuellen Schriftart.

[in] wLast

Das letzte Zeichen in der Gruppe aufeinanderfolgender Zeichen aus der aktuellen Schriftart.

[out] lpABC

Ein Zeiger auf ein Array von ABC-Strukturen , das die Zeichenbreiten in logischen Einheiten empfängt. Dieses Array muss mindestens so viele ABC-Strukturen enthalten, wie zeichen in dem bereich vorhanden sind, der durch die Parameter uFirstChar und uLastChar angegeben wird.

Rückgabewert

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

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

Hinweise

Der TrueType-Rasterizer bietet ABC-Zeichenabstand, nachdem eine bestimmte Punktgröße ausgewählt wurde. Ein Abstand ist der Abstand, der der aktuellen Position hinzugefügt wird, bevor die Glyphe platziert wird. Der B-Abstand ist die Breite des schwarzen Teils der Glyphe. C-Abstand ist der Abstand, der zur aktuellen Position hinzugefügt wird, um Leerzeichen rechts von der Glyphe bereitzustellen. Die erweiterte Gesamtbreite wird durch A+B+C angegeben.

Wenn die GetCharABCWidths-Funktion negative A- oder C-Breiten für ein Zeichen abruft, enthält dieses Zeichen Unter- oder Überhänge.

Um die ABC-Breite in Schriftartenentwurfseinheiten zu konvertieren, sollte eine Anwendung den Wert verwenden, der im otmEMSquare-Element einer OUTLINETEXTMETRIC-Struktur gespeichert ist. Dieser Wert kann durch Aufrufen der GetOutlineTextMetrics-Funktion abgerufen werden.

Die ABC-Breite des Standardzeichens wird für Zeichen außerhalb des Bereichs der aktuell ausgewählten Schriftart verwendet.

Um die Breite von Zeichen in Nicht-TrueType-Schriftarten abzurufen, sollten Anwendungen die GetCharWidth-Funktion verwenden.

Hinweis

Der wingdi.h-Header definiert GetCharABCWidths als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

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 (windows.h einschließen)
Bibliothek Gdi32.lib
DLL Gdi32.dll

Weitere Informationen

ABC

Schriftart- und Textfunktionen

Übersicht über Schriftarten und Text

GetCharWidth

GetOutlineTextMetrics

OUTLINETEXTMETRIC