STRUCTURE OUTLINETEXTMETRICA (wingdi.h)

La structure OUTLINETEXTMETRIC contient des métriques décrivant une police TrueType.

Syntaxe

typedef struct _OUTLINETEXTMETRICA {
  UINT        otmSize;
  TEXTMETRICA 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;
} OUTLINETEXTMETRICA, *POUTLINETEXTMETRICA, *NPOUTLINETEXTMETRICA, *LPOUTLINETEXTMETRICA;

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 pour 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 Barré
5 Gras

otmfsType

Indique si la police est concédée 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 qui a 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 qui a 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 à partir de la verticale. Les polices régulières (romaines) ont une valeur de zéro. Les polices italiques ont généralement un angle italique négatif (c’est-à-dire qu’elles se 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

Interligne typographique.

otmsCapEmHeight

Non pris en charge.

otmsXHeight

Non pris en charge.

otmrcFontBox

Cadre englobant de la police.

otmMacAscent

La distance maximale des caractères de cette police s’étend au-dessus de la ligne de base de l’ordinateur Macintosh.

otmMacDescent

La distance maximale des caractères de cette police s’étend sous la ligne de base de l’ordinateur Macintosh.

otmMacLineGap

Informations d’interligne pour l’ordinateur Macintosh.

otmusMinimumPPEM

La plus petite taille recommandée pour cette police, en pixels par 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 de l’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 de l’exposant est mesuré à partir de la ligne de base du caractère à la ligne de base du caractère d’exposant.

otmsStrikeoutSize

Largeur du trait de barré 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 barré 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 sont inférieures.

otmsUnderscoreSize

Épaisseur du trait de soulignement de cette police.

otmsUnderscorePosition

Position du trait de soulignement pour 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 du début de la structure vers 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, ils dépendent du mode de mappage actuel du contexte d’affichage spécifié.

Notez que OUTLINETEXTMETRIC est défini à l’aide du paramètre 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 l’empaquetage par défaut de 8 octets. Pour plus d’informations, consultez la rubrique MSDN « Problèmes de compression 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. 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]
En-tête wingdi.h (inclure Windows.h)

Voir aussi

Structures de police et de texte

Vue d’ensemble des polices et du texte

GetOutlineTextMetrics

LOGFONT

TEXTMETRIC