В графическом режиме для вывода текста используется шрифт с
растром 8х8 и несколько векторных шрифтов. Растровый символ зада-
ется с помощью матрицы элементов изображения. Векторный шрифт за-
дается рядом векторов, которые указывают графической системе, как
рисовать шрифт.
Преимущество использования векторных шрифтов становится оче-
видным, когда вы начинаете рисовать большие символы. Поскольку
штриховой шрифт задается векторами, то при увеличении шрифта ка-
чество и разрешение остаются, тем не менее, хорошими.
Когда увеличивается растровый шрифт, то матрица умножается
на масштабный коэффициент, а когда этот масштабный коэффициент
увеличивается, разрешение у символов становится более грубым. Для
маленьких шрифтов растровый шрифт должен быть достаточно приемле-
мым, но для больших шрифтов вы, вероятно, захотите выбрать век-
торный шрифт.
Выравнивание графического текста управляется процедурой
SetTextJustify. Масштабирование и выбор шрифта осуществляется с
помощью процедуры SetTextStyle. Графический текст выводится с по-
мощью процедур ОutText или ОutTextХY. Запрос о текущих установ-
ленных для текста параметрах выполняется с помощью обращения к
процедуре GetTextSettings. Векторные шрифты хранятся каждый в от-
дельном файле на диске и должны присутствовать там во время рабо-
ты (при вызове процедуры SetTextStyle). Размер векторного шрифта
можно настроить с помощью процедуры SetUserCharSize. Файлы шриф-
тов (которые имеют расширение .CHR) могут загружаться с диска ав-
томатически модулем Graph, или их можно компоновать с программой
пользователя или загружать и "регистрировать" с помощью модуля
Graph.
Для преобразования файла шрифта (или любого другого предназ-
наченного для этой цели двоичного файла данных) в файл .OBJ, ко-
торый можно компоновать с модулем или программой с помощью дирек-
тивы компилятора $L в Borland Pascal предусмотрена специальная
утилита BINOBJ.EXE. При этом становится возможным поместить все
файлы шрифтов в выполняемый файл .EXE (см. комментарии в начале
примера программы BGILINK.PAS на дистрибутивном диске).
B.Pascal 7 & Objects/LR - 314 -