STRUCTURE OUTLINETEXTMETRICW (wingdi.h)
La structure OUTLINETEXTMETRIC contient des métriques décrivant une police TrueType.
Syntaxe
typedef struct _OUTLINETEXTMETRICW {
UINT otmSize;
TEXTMETRICW otmTextMetrics;
BYTE otmFiller;
PANOSE otmPanoseNumber;
UINT otmfsSelection;
UINT otmfsType;
int otmsCharSlopeRise;
int otmsCharSlopeRun;
int otmItalicAngle;
UINT otmEMSquare;
int otmAscent;
int otmDescent;
UINT otmLineGap;
UINT otmsCapEmHeight;
UINT otmsXHeight;
RECT otmrcFontBox;
int otmMacAscent;
int otmMacDescent;
UINT otmMacLineGap;
UINT otmusMinimumPPEM;
POINT otmptSubscriptSize;
POINT otmptSubscriptOffset;
POINT otmptSuperscriptSize;
POINT otmptSuperscriptOffset;
UINT otmsStrikeoutSize;
int otmsStrikeoutPosition;
int otmsUnderscoreSize;
int otmsUnderscorePosition;
PSTR otmpFamilyName;
PSTR otmpFaceName;
PSTR otmpStyleName;
PSTR otmpFullName;
} OUTLINETEXTMETRICW, *POUTLINETEXTMETRICW, *NPOUTLINETEXTMETRICW, *LPOUTLINETEXTMETRICW;
Membres
otmSize
Taille, en octets, de la structure OUTLINETEXTMETRIC .
otmTextMetrics
Structure TEXTMETRIC contenant des informations supplémentaires sur la police.
otmFiller
Valeur qui entraîne l’alignement de la structure sur les octets.
otmPanoseNumber
Numéro PANOSE de cette police.
otmfsSelection
Nature du modèle de police. Ce membre peut être une combinaison des bits suivants.
bit | Signification |
---|---|
0 | Italique |
1 | Trait de soulignement |
2 | Négatif |
3 | Plan |
4 | Grève |
5 | Gras |
otmfsType
Indique si la police est sous licence. Les polices sous licence ne doivent pas être modifiées ou échangées. Si le bit 1 est défini, la police peut ne pas être incorporée dans un document. Si le bit 1 est clair, la police peut être incorporée. Si le bit 2 est défini, l’incorporation est en lecture seule.
otmsCharSlopeRise
Pente du curseur. Cette valeur est 1 si la pente est verticale. Les applications peuvent utiliser cette valeur et la valeur du membre otmsCharSlopeRun pour créer un curseur italique ayant la même pente que l’angle italique main (spécifié par le membre otmItalicAngle).
otmsCharSlopeRun
Pente du curseur. Cette valeur est égale à zéro si la pente est verticale. Les applications peuvent utiliser cette valeur et la valeur du membre otmsCharSlopeRise pour créer un curseur italique ayant la même pente que l’angle italique main (spécifié par le membre otmItalicAngle).
otmItalicAngle
Le main’angle italique de la police, en dixièmes de degré dans le sens inverse des aiguilles d’une montre par rapport à la verticale. Les polices régulières (roman) ont une valeur de zéro. Les polices italiques ont généralement un angle italique négatif (c’est-à-dire qu’elles penchent vers la droite).
otmEMSquare
Nombre d’unités logiques définissant la dimension x ou y du carré em pour cette police. (Le nombre d’unités dans les directions x et y est toujours le même pour un carré em.)
otmAscent
La distance maximale des caractères de cette police s’étend au-dessus de la ligne de base. Il s’agit de l’ascension typographique de la police.
otmDescent
La distance maximale des caractères de cette police s’étend sous la ligne de base. Il s’agit de la descente typographique de la police.
otmLineGap
Espacement typographique des lignes.
otmsCapEmHeight
Non pris en charge.
otmsXHeight
Non pris en charge.
otmrcFontBox
Zone englobante de la police.
otmMacAscent
La distance maximale de cette police s’étend au-dessus de la ligne de base de l’ordinateur Macintosh.
otmMacDescent
La distance maximale de cette police s’étend sous la ligne de base de l’ordinateur Macintosh.
otmMacLineGap
Informations d’espacement des lignes pour l’ordinateur Macintosh.
otmusMinimumPPEM
Taille recommandée la plus petite pour cette police, en pixels par em-carré.
otmptSubscriptSize
Taille horizontale et verticale recommandée pour les indices dans cette police.
otmptSubscriptOffset
Décalage horizontal et vertical recommandé pour les indices dans cette police. Le décalage d’indice est mesuré de l’origine du caractère à l’origine du caractère d’indice.
otmptSuperscriptSize
Taille horizontale et verticale recommandée pour les exposants dans cette police.
otmptSuperscriptOffset
Décalage horizontal et vertical recommandé pour les exposants dans cette police. Le décalage d’exposant est mesuré de la ligne de base du caractère à la ligne de base du caractère en exposant.
otmsStrikeoutSize
Largeur du trait de grève pour cette police. En règle générale, il s’agit de la largeur du tiret em pour la police.
otmsStrikeoutPosition
Position du trait de grève par rapport à la ligne de base de cette police. Les valeurs positives se trouvent au-dessus de la ligne de base et les valeurs négatives se trouvent en dessous.
otmsUnderscoreSize
Épaisseur du caractère de soulignement de cette police.
otmsUnderscorePosition
Position du caractère de soulignement de cette police.
otmpFamilyName
Décalage entre le début de la structure et une chaîne spécifiant le nom de famille de la police.
otmpFaceName
Décalage entre le début de la structure et une chaîne spécifiant le nom de police de la police. (Ce nom de police correspond au nom spécifié dans la structure LOGFONT .)
otmpStyleName
Décalage entre le début de la structure et une chaîne spécifiant le nom de style de la police.
otmpFullName
Décalage entre le début de la structure et une chaîne spécifiant le nom complet de la police. Ce nom est unique pour la police et contient souvent un numéro de version ou d’autres informations d’identification.
Remarques
Les tailles retournées dans OUTLINETEXTMETRIC sont spécifiées en unités logiques ; Autrement dit, elles dépendent du mode de mappage actuel du contexte d’affichage spécifié.
Notez que OUTLINETEXTMETRIC est défini à l’aide du paramètre de pack actuel. Pour éviter les problèmes, assurez-vous que l’application est générée à l’aide de l’empaquetage par défaut de la plateforme. Par exemple, Windows 32 bits utilise une empaquetage par défaut de 8 octets. Pour plus d’informations, consultez la rubrique MSDN « Problèmes d’empaquetage du compilateur C ».
Notes
L’en-tête wingdi.h définit OUTLINETEXTMETRIC comme un 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. Le mélange 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] |
En-tête | wingdi.h (inclure Windows.h) |
Voir aussi
Structures de police et de texte