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
Schriftart- und Textfunktionen