15.2.1. Идея

lfCharSet: Byte; // Набор символов

lfOutPrecision: Byte; // Точность отображения

lfClipPrecision: Byte; // Точность отсечки

IfQuality: Byte; // Качество отрисовки

IfPitchAndFamily: Byte; // Семейство шрифта IfFaceName: array [0..31] of Char; // Название шрифта end;
15.2. Компонент FarText

Рис. 15.2. Демонстрация логического шрифта с переменным наклоном базовой линии Поля описаны в табл. 15.1.

Таблица 15.1. Назначение полей записи TLogFont

Поле

Описание

IfHeight

Высота шрифта в логических единицах (пунктах). Если больше 0, указывает

высоту знакоместа (с учетом диакритических элементов), если меньше 0,

указывает высоту «чистого символа», если 0 - используется

умалчиваемое значение

ifWidth

Ширина символов. Для пропорциональных шрифтов означает среднюю

ширину строчной буквы. Если параметр равен 0, ширина выбирается

пропорционально высоте

IfEscapement

Угол наклона базовой линии к горизонтальной оси в десятых долях градуса.

Положительное значение означает поворот против часовой стрелки

IfOrientation

Наклон символов относительно базовой линии в десятых долях градуса

продолжение &

Таблица 15.1 (продолжение)

Поле

Описание

IfWeight

«Жирность» шрифта в диапазоне от 0 до 1000. Нормальный шрифт имеет

значение 400, полужирный - 700

Ifltalic

Если содержит 1, шрифт наклонный (курсив)

IfUnderline

Если содержит 1, шрифт подчеркнутый

IfStrikeOut

Если содержит 1, шрифт перечеркнутый

IfCharSet

Набор символов. Значение 1 соответствует набору А№1_СНАк5ЕТ

с символами кириллицы

IfOutPrecision

Задает точность представления символов на физическом устройстве.

Рекомендуется использовать 0

IfClipPrecision

Точность отсечения надписи границами прямоугольника отрисовки.

Рекомендуется использовать 0

IfQuality

Определяет качество отрисовки шрифта. Рекомендуется использовать 0

IfPitchAndFamily

Тип шрифта и его семейство

IfFaceName

Имя шрифта

Поле If Escapement определяет наклон базовой линии относительно горизонтальной оси. Значение 900 означает направление вывода сверху вниз, значение -900 - снизу вверх. В компоненте задается перечисление TOrientation, значения которого устанавливают наклон:

• orLef tRight - нет наклона;
• orBottomTop - вывод снизу вверх;
• orTopBottom - вывод сверху вниз;
• orLef tBottomRightTop - 45° снизу вверх;

• orLef tTopRightBottom- 45° сверху вниз.

В перечислении TTextStyle задаются трехмерные эффекты:

• tsFlat - плоский шрифт;
• tsRecessed - вдавленный шрифт;
• t s Raised - выпуклый шрифт;

• t s Shadow - оттененный шрифт.

Рисунок 15.3 иллюстрирует трехмерные эффекты и ориентацию компонента FarText.

ПРИМЕЧАНИЕ -

Логические шрифты с произвольным наклоном могут быть только шрифтами TrueType. По умолчанию форма (или любой другой контейнер) использует матричный шрифт MS Sans Serif, который не может менять свою ориентацию, поэтому при размещении компонента FarText в контейнере необходимо заменить этот шрифт любым шрифтом TrueType (Arial, Courier New, Times New Roman и т. д.). Эта замена делается в конструкторе компонента (устанавливается шрифт Times New Roman). Помните об этом, если при смене шрифта будете использовать нестандартную ориентацию текста.

15.2. Компонент FarText

Рис. 15.3. Демонстрация трехмерных эффектов и ориентации компонента FarText

15.1.3. Тестовая программа FarProgress || Оглавление || 15.2.2. Реализация FarText


Искусство создания компонентов Delphi



Новости за месяц

  • Апрель
    2019
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс