Partager via


CDC::GetCharABCWidths

Récupère les largeurs des caractères consécutifs dans une plage spécifiée de polices TrueType actuelle.

BOOL GetCharABCWidths( 
   UINT nFirstChar, 
   UINT nLastChar, 
   LPABC lpabc  
) const; 
BOOL GetCharABCWidths( 
   UINT nFirstChar, 
   UINT nLastChar, 
   LPABCFLOAT lpABCF  
) const;

Paramètres

  • nFirstChar
    Spécifie le premier caractère de la plage de caractères de la police actuelle pour laquelle les largeurs de caractère sont retournées.

  • nLastChar
    Spécifie le dernier caractère de la plage de caractères de la police actuelle pour laquelle les largeurs de caractère sont retournées.

  • lpabc
    Pointe vers un tableau de structures d' ABC qui acceptent les largeurs de caractère lorsque la fonction retourne. Ce tableau doit contenir au moins autant de structures de ABC comme il existe des caractères de la plage spécifiée par les paramètres d' nFirstChar et d' nLastChar .

  • lpABCF
    Pointe vers une mémoire tampon fournie par l'application avec un tableau de structures d' ABCFLOAT pour accepter les largeurs de caractère lorsque la fonction retourne. Les largeurs retournées par cette fonction sont au format à virgule flottante IEEE.

Valeur de retour

Une valeur différente de zéro si la fonction est réussie ; sinon 0.

Notes

Les largeurs sont retournées en unités logiques. Cette fonction réussit uniquement avec les polices truetype.

Le rastériseur TrueType fournit l'espacement des caractères « ABC » après qu'une taille particulière a été sélectionnée. " Une » espacement est la distance qui est ajoutée à la position actuelle avant de définir le glyphe. " B » espacement est la largeur de la partie noire de glyphe. " C » espacement est ajouté à la position actuelle de présenter l'espace blanc à droite de glyphe. La largeur totale avancée est fournie par Un + B + C.

Lorsque la fonction membre d' GetCharABCWidths extrait « C » négatif des largeurs « A » ou d'un caractère, ce caractère inclut des underhangs ou des dépassements de capacité.

Pour convertir les largeurs de ABC aux unités de design de police, une application doit créer une police dont la hauteur (comme spécifié dans le membre de lfHeight de la structure de LOGFONT ) est égal à la valeur stockée dans le membre de ntmSizeEM de la structure de NEWTEXTMETRIC . (La valeur du membre de ntmSizeEM peut être récupérée en appelant la fonction Windows d' EnumFontFamilies .)

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

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

Configuration requise

Header: afxwin.h

Voir aussi

Référence

CDC, classe

Graphique de la hiérarchie

CDC::GetCharWidth

GetCharABCWidths

GetCharABCWidthsFloat

GetCharWidthFloat