The TEXTMETRIC structure contains basic information about a physical font. All sizes are given in logical units; that is, they depend on the current mapping mode of the display context.
typedef struct tagTEXTMETRIC { // tm LONG tmHeight; LONG tmAscent; LONG tmDescent; LONG tmInternalLeading; LONG tmExternalLeading; LONG tmAveCharWidth; LONG tmMaxCharWidth; LONG tmWeight; LONG tmOverhang; LONG tmDigitizedAspectX; LONG tmDigitizedAspectY; BCHAR tmFirstChar; BCHAR tmLastChar; BCHAR tmDefaultChar; BCHAR tmBreakChar; BYTE tmItalic; BYTE tmUnderlined; BYTE tmStruckOut; BYTE tmPitchAndFamily; BYTE tmCharSet; } TEXTMETRIC;
The tmOverhang member enables the application to determine how much of
the character width returned by a GetTextExtentPoint32
function call on a single character is the actual character width and how much
is the per-string extra width. The actual width is the extent minus the
overhang.
The four low-order bits of this member specify information about the pitch and the technology of the font. A constant is defined for each of the four bits:
Constant |
Meaning |
TMPF_FIXED_PITCH |
If this bit is set the font is a variable pitch font. If this bit is clear the font is a fixed pitch font. Note very carefully that those meanings are the opposite of what the constant name implies. |
TMPF_VECTOR |
If this bit is set the font is a vector font. |
TMPF_TRUETYPE |
If this bit is set the font is a TrueType font. |
TMPF_DEVICE |
If this bit is set the font is a device font. |
An application should carefully test for qualities encoded in these low-order bits, making no arbitrary assumptions. For example, besides having their own bits set, TrueType and PostScript fonts set the TMPF_VECTOR bit. A monospace bitmap font has all of these low-order bits clear; a proportional bitmap font sets the TMPF_FIXED_PITCH bit. A Postscript printer device font sets the TMPF_DEVICE, TMPF_VECTOR, and TMPF_FIXED_PITCH bits.
The four high-order bits of tmPitchAndFamily designate the font’s font
family. An application can use the value 0xF0 and the bitwise AND operator to
mask out the four low-order bits of tmPitchAndFamily, thus obtaining a
value that can be directly compared with font family names to find an
identical match. For information about font families, see the description of
the LOGFONT structure.
GetTextMetrics, GetTextExtentPoint32, LOGFONT
file: /Techref/os/win/api/win32/struc/src/str21_9.htm, 7KB, , updated: 2000/4/7 11:20, local time: 2024/12/29 07:16,
18.116.88.132:LOG IN
|
©2024 These pages are served without commercial sponsorship. (No popup ads, etc...).Bandwidth abuse increases hosting cost forcing sponsorship or shutdown. This server aggressively defends against automated copying for any reason including offline viewing, duplication, etc... Please respect this requirement and DO NOT RIP THIS SITE. Questions? <A HREF="http://massmind.org/techref/os/win/api/win32/struc/src/str21_9.htm"> TEXTMETRIC</A> |
Did you find what you needed? |
Welcome to massmind.org! |
Welcome to massmind.org! |
.