Структура NEWTEXTMETRIC
Type NEWTEXTMETRIC
tmHeight As Long
tmAscent As Long
tmDescent As Long
tmInternalLeading As Long
tmExternalLeading As Long
tmAveCharWidth As Long
tmMaxCharWidth As Long
tmWeight As Long
tmOverhang As Long
tmDigitizedAspectX As Long
tmDigitizedAspectY As Long
tmFirstChar As Byte
tmLastChar As Byte
tmDefaultChar As Byte
tmBreakChar As Byte
tmItalic As Byte
tmUnderlined As Byte
tmStruckOut As Byte
tmPitchAndFamily As Byte
tmCharSet As Byte
ntmFlags As Long
ntmSizeEM As Long
ntmCellHeight As Long
ntmAveWidth As Long
End Type
Структура NEWTEXTMETRIC содержит информацию о физическом шрифте TrueType. Все размеры задаются в логических единицах контекста устройства, если не оговорено обратное
Состав структуры
- tmHeight
- Высота символа шрифта (равно сумме tmAscent и tmDescent)
- tmAscent
- Высота верхней части символьной ячейки
- tmDescent
- Высота нижней части символьной ячейки
- tmInternalLeading
- Внутренний промежуток символьной ячейки
- tmExternalLeading
- Внешний промежуток символьной ячейки
- tmAveCharWidth
- Средняя ширина шрифта
- tmMaxCharWidth
- Ширина самого широкого символа шрифта
- tmWeight
- Один из следующих флагов, определяющих жирность шрифта:
- FW_DONTCARE = 0
- По умолчанию
- FW_THIN = 100
- Легкая жирность
- FW_EXTRALIGHT = 200
- Небольшая жирность
- FW_ULTRALIGHT = 200
- Аналогично FW_EXTRALIGHT
- FW_LIGHT = 300
- Легкая жирность
- FW_NORMAL = 400
- Нормальная жирность
- FW_REGULAR = 400
- Аналогично FW_NORMAL
- FW_MEDIUM = 500
- Средняя жирность
- FW_SEMIBOLD = 600
- Выше среднего
- FW_DEMIBOLD = 600
- Аналогично FW_SEMIBOLD
- FW_BOLD = 700
- Жирный шрифт
- FW_EXTRABOLD = 800
- Очень жирный шрифт
- FW_ULTRABOLD = 800
- Аналогично FW_EXTRABOLD
- FW_HEAVY = 900
- Сверх жирный шрифт
- FW_BLACK = 900
- Аналогично FW_HEAVY
- tmOverhang
- Параметр, используемый при синтезировании курсивных или жирных символов
- tmDigitizedAspectX
- Горизонтальный аспект
- tmDigitizedAspectY
- Вертикальный аспект
- tmFirstChar
- Код первого символа
- tmLastChar
- Код последнего символа
- tmDefaultChar
- Код символа, выводимого вместо отсутствующих символов шрифта
- tmBreakChar
- Код символа, используемый для выравнивания текста
- tmItalic
- Если 0, то шрифт не курсивный. Если ненулевое значение, то шрифт является курсивным
- tmUnderlined
- Если 0, то шрифт не подчеркнутый. Если ненулевое значение, то шрифт является подчеркнутым
- tmStruckOut
- Если 0, то шрифт не перечеркнутый. Если ненулевое значение, то шрифт является перечеркнутым
- tmPitchAndFamily<
- Комбинация флагов, определяющих семейство шрифта и пропорциональность:
- DEFAULT_PITCH = 0
- По умолчанию
- FIXED_PITCH = 1
- Моноширный шрифт
- VARIABLE_PITCH = 2
- Пропорциональный шрифт
- FF_DECORATIVE = 80
- Showy, decorative font face.
- FF_DONTCARE = 0
- Do not care about the font face.
- FF_MODERN = 8
- Modern font face (monospaced, sans serif font).
- FF_ROMAN = 16
- Roman font face (proportional-width, serif font).
- FF_SCRIPT = 64
- Script font face which imitates script handwriting.
- FF_SWISS = 32
- Swiss font face (proportional-width, sans serif font).
- tmCharSet
- Один из следующих флагов, определяющих кодировку шрифта:
- ANSI_CHARSET = 0
- ANSI-кодировка
- ARABIC_CHARSET = 178
- Windows NT/2000: Arabic character set
- BALTIC_CHARSET = 186
- Windows 95/98/Me: Baltic character set
- CHINESEBIG5_CHARSET = 136
- Chinese Big 5 character set
- DEFAULT_CHARSET = 1
- Default character set
- EASTEUROPE_CHARSET = 238
- Windows 95/98/Me: Eastern European character set
- GB2312_CHARSET = 134
- GB2312 character set.
- GREEK_CHARSET = 161
- Windows 95/98: Greek character set
- HANGEUL_CHARSET = 129
- HANDEUL character set
- HEBREW_CHARSET = 177
- Windows NT/2000/XP: Hebrew character set
- JOHAB_CHARSET = 130
- Windows 95/98/XP: Johab character set
- MAC_CHARSET = 77
- Windows 95/98/Me: Mac character set
- OEM_CHARSET = 255
- Original equipment manufacturer (OEM) character set
- RUSSIAN_CHARSET = 204
- Windows 95/98/Me: Russian character set
- SHIFTJIS_CHARSET = 128
- ShiftJis character set
- SYMBOL_CHARSET = 2
- Symbol character set
- THAI_CHARSET = 222
- Windows NT/2000/XP: Thai character set
- TURKISH_CHARSET = 162
- Windows 95/98/Me: Turkish character set
- ntmFlags
- Флаги, определяющие различные свойства или атрибуты шрифта:
- NTM_BOLD = &H20
- Жирный шрифт
- NTM_DSIG = &H100000
- Windows 2000: The font has a digital signature, which allows the font to be traced and ensures that the font has not been corrupted.
- NTM_ITALIC = &H1
- Курсивный шрифт
- NTM_MULTIPLEMASTER = &H40000
- Windows 2000: The font is a Multiple Master font.
- NTM_NONNEGATIVE_AC = &H10000
- Windows 2000: No glyph in the font at any size as a negative A or C space.
- NTM_PS_OPENTYPE = &H20000
- Windows 2000: The font is a PostScript OpenType font.
- NTM_REGULAR = &H100
- The font is a regular font.
- NTM_TT_OPENTYPE
- Windows 2000: The font is a TrueType OpenType font.
- NTM_TYPE1 = &H80000
- Windows 2000: The font is a Type 1 font.
- ntmSizeEM
- The size of the em square for the font, measured in notional units.
- ntmCellHeight
- The height of the font, measured in notional units.
- ntmAvgWidth
- The average width of the characters in the font, measured in notional units.
Используется в
EnumFontFamProc, NEWTEXTMETRICEX