средств модифицировать либо все 256,
средств модифицировать либо все 256, либо часть символов
знакогенератора. Для этого предварительно сформированный пиксельный
шаблон символа загружается в соответствующую позицию шрифтовой области
видеоадаптера. EGA обычно имеет 4 шрифтовых области, VGA - 8 областей,
в каждой из которых могут быть переопределены все 256 символов. Текущее
доступное количество шрифтовых областей возвращается функцией
MAXFONT().
Программное построение шрифтов потребовало бы нежелательного расхода
памяти. А с помощью функций GETFONT() шрифты из видеоадаптера могут
быть считаны в символьную переменную. Загрузка же в соответствующую
область памяти адаптера может быть осуществлена либо из этой же или
иной переменной с помощью функции SETFONT(), либо из файла функцией
FONTLOAD(). Загруженный шрифт может быть активизирован функцией
FONTSELECT().
Изменение пиксельной высоты
В принципе видеоадаптеры EGA и VGA обеспечивают использование шрифтов
с высотой символа от 2 до 32 пикселей (1 пиксель/символ возможен
только при разрешающей способности 200 строк сканирования).
ROM-шрифты имеют размеры 8, 14 и 16 пикселей и используются для
реализации режимов EGA 25/43 и VGA 25/28/50.
Шрифты с новой пиксельной высотой должны строиться индивидуально, что
не сложно при использовании поставляемого с CT II редактора шрифтов.
При загрузке шрифта функции FONTLOAD() и SETFONT() рассчитывают высоту
символа исходя из длины строки шрифтовых данных. Поскольку файл должен
всегда содержать определения всех 256 символов, то высота символа
вычисляется ими по формуле:
<Высота символа> = LEN(<Шрифтовые данные>) / 256
Параметр <lCompute> служит признаком требования загрузки шрифта с
новой пиксельной высотой. Это указание должно быть явным, так как
изменяется подсчет строк и режим отображения. Кроме того, при этом