typedef struct _OUTLINETEXTMETRIC { 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;
Переменные
otmSize - содержит размер структуры OUTLINETEXTMETRIC в байтах.
otmTextMetrics - объект структуры TEXTMETRIC, содержащий дополнительную информацию о шрифте.
otmFiller - задает выравнивание структуры по границе байта.
otmPanoseNumber - определяет число PANOSE для данного шрифта.
otmfsSelection - содержит флаги шрифта. Разрядам данной переменной соответствуют следующие флаги: 0 - наклонный; 1 - подчеркнутый; 2 - инвертированный; 3 - контурный; 4 - зачеркнутый; 5 - полужирный.
otmfsType - определяет лицензионность шрифта. Лицензионный шрифт не должен изменяться или обмениваться. Если в данной переменной установлен бит 1, данный шрифт не может быть внедрен в документ. В противном случае шрифт может внедряться в документ. Если установлен бит 2, то разрешается внедрение данного шрифта в режиме "только для чтения".
otmsCharSlopeRise - определяет ориентацию текстового курсора. Если эта переменная равна 1, то текстовый курсор имеет вертикальную ориентацию. Приложение может использовать данную переменную и значение переменной otmsCharSlopeRun для создания текстовых курсоров для курсивных шрифтов, в которых курсор имеет тот же угол наклона, что и символы шрифта (угол определяется переменной otmItalicAngle).
otmsCharSlopeRun - определяет ориентацию текстового курсора. Если эта переменная равна 0, то текстовый курсор имеет вертикальную ориентацию. Приложение может использовать данную переменную и значение переменной otmsCharSlopeRise для создания текстовых курсоров для курсивных шрифтов, в которых курсор имеет тот же угол наклона, что и символы шрифта (угол определяется переменной otmItalicAngle).
otmItalicAngle - определяет угол наклона шрифта в десятых долях градуса против часовой стрелки от вертикального положения. Для регулярных шрифтов (roman) эта переменная имеет нулевое значение.
otmEMSquare - определяет горизонтальные и вертикальные размеры квадрата em данного шрифта в логических единицах (горизонтальные и вертикальные размеры квадрата em равны).
otmAscent - определяет максимальное расстояние от базовой линии до верхней точки любого символа шрифта.
otmDescent - определяет максимальное расстояние от базовой линии до нижней точки любого символа шрифта.
otmLineGap - определяет типографский межстрочный интервал.
otmsCapEmHeight - не используется.
otmsXHeight - не используется.
otmrcFontBox - определяет прямоугольник, описывающий символы шрифта.
otmMacAscent - определяет максимальное расстояние от базовой линии до верхней точки любого символа шрифта для компьютеров Macintosh.
otmMacDescent - определяет максимальное расстояние от базовой линии до нижней точки любого символа шрифта для компьютеров Macintosh.
otmMacLineGap - определяет типографский межстрочный интервал для компьютеров Macintosh.
otmusMinimumPPEM - определяет минимальный рекомендуемый размер данного шрифта в элементах изображения на квадрат em.
otmptSubscriptSize - определяет рекомендуемые горизонтальный и вертикальный размеры подстрочных символов данного шрифта.
otmptSubscriptOffset - определяет рекомендуемое горизонтальное и вертикальное смещение подстрочных символов данного шрифта. Смещение подстрочных символов шрифта измеряется от начала координат символа до начала координат подстрочного символа.
otmptSuperscriptSize - определяет рекомендуемые горизонтальный и вертикальный размеры верхних индексов символов данного шрифта.
otmptSuperscriptOffset - определяет рекомендуемое горизонтальное и вертикальное смещение верхних индексов данного шрифта. Смещение верхнего индекса шрифта измеряется от начала координат символа до начала координат верхнего индекса.
otmsStrikeoutSize - определяет ширину символа зачеркивания для данного шрифта. Обычно эта величина равна ширине em - подчеркивания в шрифте.
otmsStrikeoutPosition - определяет положение символа зачеркивания относительно базовой линии шрифта. Положительные значения означают расположение выше базовой линии, а отрицательные - ниже.
otmsUnderscoreSize - определяет ширину символа подчеркивания для данного шрифта.
otmsUnderscorePosition - определяет положение символа зачеркивания данного шрифта.
otmpFamilyName - определяет смещение строки, содержащей имя семейства шрифта, от начала структуры.
otmpFaceName - определяет смещение строки, содержащей имя начертания шрифта, от начала структуры (это имя должно соответствовать имени, определенному в объекте структуры LOGFONT).
otmpStyleName - определяет смещение строки, содержащей имя стиля шрифта, от начала структуры.
otmpFullName - определяет смещение строки, содержащей полное имя шрифта, от начала структуры. Данное имя является уникальным для данного шрифта и часто содержит имя версии или другую идентификационную информацию.
Описание
Данная структура содержит атрибуты шрифта TrueType. Все размеры в ней задаются в логических единицах, то есть они зависят от текущего режима масштабирования, заданного в контексте устройства.