Partager via


GetCharABCWidthsA, fonction (wingdi.h)

La fonction GetCharABCWidths récupère les largeurs, en unités logiques, des caractères consécutifs dans une plage spécifiée à partir de la police TrueType actuelle. Cette fonction réussit uniquement avec les polices TrueType.

Syntaxe

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

Paramètres

[in] hdc

Handle pour le contexte de l’appareil.

[in] wFirst

Premier caractère du groupe de caractères consécutifs de la police actuelle.

[in] wLast

Dernier caractère du groupe de caractères consécutifs de la police actuelle.

[out] lpABC

Pointeur vers un tableau de structures ABC qui reçoit les largeurs de caractères, en unités logiques. Ce tableau doit contenir au moins autant de structures ABC que de caractères dans la plage spécifiée par les paramètres uFirstChar et uLastChar .

Valeur retournée

Si la fonction réussit, la valeur de retour est différente de zéro

Si la fonction échoue, la valeur de retour est égale à zéro.

Remarques

Le rastériseur TrueType fournit un espacement des caractères ABC une fois qu’une taille de point spécifique a été sélectionnée. Un espacement est la distance ajoutée à la position actuelle avant de placer le glyphe. L’espacement B est la largeur de la partie noire du glyphe. L’espacement C est la distance ajoutée à la position actuelle pour fournir un espace blanc à droite du glyphe. La largeur avancée totale est spécifiée par A+B+C.

Lorsque la fonction GetCharABCWidths récupère des largeurs A ou C négatives pour un caractère, ce caractère inclut des sous-hauteurs ou des surplombs.

Pour convertir les largeurs ABC en unités de conception de police, une application doit utiliser la valeur stockée dans le membre otmEMSquare d’une structure OUTLINETEXTMETRIC . Cette valeur peut être récupérée en appelant la fonction GetOutlineTextMetrics .

Les largeurs ABC du caractère par défaut sont utilisées pour les caractères en dehors de la plage de la police actuellement sélectionnée.

Pour récupérer la largeur des caractères dans des polices non TrueType, les applications doivent utiliser la fonction GetCharWidth .

Notes

L’en-tête wingdi.h définit GetCharABCWidths comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. La combinaison de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête wingdi.h (inclure Windows.h)
Bibliothèque Gdi32.lib
DLL Gdi32.dll

Voir aussi

ABC

Fonctions de police et de texte

Vue d’ensemble des polices et du texte

GetCharWidth

GetOutlineTextMetrics

OUTLINETEXTMETRIC