Вывод текста
Описываемые ниже стандартные процедуры и функции поддерживают вывод текстовых сообщений в графическом режиме. Это не одно и то же, что использование процедур Write или WriteLn. Дело в том, что специально для графического режима разработаны процедуры, обеспечивающие вывод сообщений различными шрифтами в горизонтальном или вертикальном направлении, с изменением размеров и т.д. Однако в стандартных шрифтах, разработанных для этих целей фирмой Borland, отсутствует кириллица, что исключает вывод русскоязычных сообщений.
С другой стороны, процедуры Write и WriteLn после загрузки в память второй половины таблицы знакогенератора (а эта операция легко реализуется в адаптерах EGA и VGA) способны выводить сообщения с использованием национального алфавита, но не обладают мощными возможностями специальных процедур.
Ниже описываются стандартные средства модуля Graph для вывода текста.
Процедура OutText
Выводит текстовую строку, начиная с текущего положения указателя. Заголовок:
Procedure OutText(Txt: String);
Здесь Txt – выводимая строка.
При горизонтальном направлении вывода указатель смещается в конец выведенного текста, при вертикальном – не меняет своего положения. Строка выводится в соответствии с установленным стилем и выравниванием. Если текст выходит за границы экрана, то при использовании штриховых шрифтов он отсекается, а в случае стандартного шрифта не выводится.
Процедура OutTextXY
Выводит строку, начиная с заданного места. Заголовок:
Procedure OutTextXY (X,Y: Integer; Txt: String);
Здесь:
- X, Y – координаты точки вывода;
- Txt – выводимая строка.
Отличается от процедуры OutText только координатами вывода. Указатель не меняет своего положения.
Процедура SetTextStyle
Устанавливает стиль текстового вывода на графический экран. Заголовок:
Procedure SetTextStyle(Font,Direct,Size: Word);
Здесь:
- Font – код (номер) шрифта;
- Direct – код направления;
- Size – код размера шрифта.
Для указания кода шрифта можно использовать следующие предварительно определенные константы:
const DefaultFont = 0;{Точечный шрифт 8x8} TriplexFont = 1;{Утроенный шрифт TRIP.CHR} SmallFont = 2;{Уменьшенный шрифт LITT.CHR} SansSerifFont = 3;{Прямой шрифт SANS.CHR} GothicFont = 4;{Готический шрифт GOTH.CHR}
Замечу, что эти константы определяют все шрифты для версий 4.0, 5.0, 5.5 и 6.0. В версии 7.0 набор шрифтов значительно расширен, однако для новых шрифтов не предусмотрены соответствующие мнемонические константы. В этой версии помимо перечисленных Вы можете при обращении к SetTextStyle использовать такие номера шрифтов:
Номер | Файл | Краткое описание |
---|---|---|
5 | scri.chr | "Рукописный" шрифт |
6 | simp.chr | Одноштриховый шрифт типа Courier |
7 | tscr.chr | Красивый наклонный шрифт типа Times Italic |
8 | Icom.chr | Шрифт типа Times Roman |
9 | euro.chr | Шрифт типа Courier увеличенного размера |
10 | bold.chr | Крупный двухштриховый шрифт |