OUTLINETEXTMETRIC
The OUTLINETEXTMETRIC structure contains metrics describing a TrueType font.
typedef struct _OUTLINETEXTMETRIC { // otm
UINT otmSize;
TEXTMETRIC 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;
} OUTLINETEXTMETRIC;
Members
-
otmSize
-
Specifies the size, in bytes, of the OUTLINETEXTMETRIC structure.
-
otmTextMetrics
-
Specifies a TEXTMETRIC structure containing further information about the font.
-
otmFiller
-
Specifies a value that causes the structure to be byte aligned.
-
otmPanoseNumber
-
Specifies the PANOSE number for this font.
-
otmfsSelection
-
Specifies the nature of the font pattern. This member can be a combination of the following bits:
Bit |
Meaning |
0 |
Italic |
1 |
Underscore |
2 |
Negative |
3 |
Outline |
4 |
Strikeout |
5 |
Bold |
-
otmfsType
-
Specifies whether the font is licensed. Licensed fonts must not be modified or exchanged. If bit 1 is set, the font may not be embedded in a document. If bit 1 is clear, the font can be embedded. If bit 2 is set, the embedding is read-only.
-
otmsCharSlopeRise
-
Specifies the slope of the cursor. This value is 1 if the slope is vertical. Applications can use this value and the value of the otmsCharSlopeRun member to create an italic cursor that has the same slope as the main italic angle (specified by the otmItalicAngle member).
-
otmsCharSlopeRun
-
Specifies the slope of the cursor. This value is zero if the slope is vertical. Applications can use this value and the value of the otmsCharSlopeRise member to create an italic cursor that has the same slope as the main italic angle (specified by the otmItalicAngle member).
-
otmItalicAngle
-
Specifies the main italic angle of the font, in tenths of a degree counterclockwise from vertical. Regular (roman) fonts have a value of zero. Italic fonts typically have a negative italic angle (that is, they lean to the right).
-
otmEMSquare
-
Specifies the number of logical units defining the x- or y-dimension of the em square for this font. (The number of units in the x- and y-directions are always the same for an em square.)
-
otmAscent
-
Specifies the maximum distance characters in this font extend above the base line. This is the typographic ascent for the font.
-
otmDescent
-
Specifies the maximum distance characters in this font extend below the base line. This is the typographic descent for the font.
-
otmLineGap
-
Specifies typographic line spacing.
-
otmsCapEmHeight
-
Not supported.
-
otmsXHeight
-
Not supported.
-
otmrcFontBox
-
Specifies the bounding box for the font.
-
otmMacAscent
-
Specifies the maximum distance characters in this font extend above the base line for the Macintosh® computer.
-
otmMacDescent
-
Specifies the maximum distance characters in this font extend below the base line for the Macintosh® computer.
-
otmMacLineGap
-
Specifies line-spacing information for the Macintosh® computer.
-
otmusMinimumPPEM
-
Specifies the smallest recommended size for this font, in pixels per em-square.
-
otmptSubscriptSize
-
Specifies the recommended horizontal and vertical size for subscripts in this font.
-
otmptSubscriptOffset
-
Specifies the recommended horizontal and vertical offset for subscripts in this font. The subscript offset is measured from the character origin to the origin of the subscript character.
-
otmptSuperscriptSize
-
Specifies the recommended horizontal and vertical size for superscripts in this font.
-
otmptSuperscriptOffset
-
Specifies the recommended horizontal and vertical offset for superscripts in this font. The superscript offset is measured from the character base line to the base line of the superscript character.
-
otmsStrikeoutSize
-
Specifies the width of the strikeout stroke for this font. Typically, this is the width of the em dash for the font.
-
otmsStrikeoutPosition
-
Specifies the position of the strikeout stroke relative to the base line for this font. Positive values are above the base line and negative values are below.
-
otmsUnderscoreSize
-
Specifies the thickness of the underscore character for this font.
-
otmsUnderscorePosition
-
Specifies the position of the underscore character for this font.
-
otmpFamilyName
-
Specifies the offset from the beginning of the structure to a string specifying the family name for the font.
-
otmpFaceName
-
Specifies the offset from the beginning of the structure to a string specifying the typeface name for the font. (This typeface name corresponds to the name specified in the LOGFONT structure.)
-
otmpStyleName
-
Specifies the offset from the beginning of the structure to a string specifying the style name for the font.
-
otmpFullName
-
Specifies the offset from the beginning of the structure to a string specifying the full name for the font. This name is unique for the font and often contains a version number or other identifying information.
Remarks
The sizes returned in OUTLINETEXTMETRIC are given in logical units; that is, they depend on the current mapping mode of the specified display context.
QuickInfo
Windows NT: Requires version 3.1 or later.
Windows: Requires Windows 95 or later.
Windows CE: Unsupported.
Header: Declared in wingdi.h.
Unicode: Defined as Unicode and ANSI structures.
See Also
Fonts and Text Overview, Font and Text Structures, GetOutlineTextMetrics, LOGFONT, TEXTMETRIC