: Word; CharSize: Word)
Тут параметр Font - номер шрифту (наприклад, одна з описаних вище констант), Direction - розташування тексту (за замовчуванням приймається горизонтальне). Можливі лише дві орієнтації тексту, позначені константами:
CONST
HorizDir
= 0;
{горизонтальна, зліва направо}
VertDir
= 1;
{вертикальна, знизу вгору}
При значенні Direction, рівному VertDir, всі символи будуть повернені проти годинникової стрілки на 90 В° і виводяться знизу вгору. Якщо задати Direction = 2, то букви будуть повернені так само, як і при Direction = VertDir, але висновок рядка буде проводитися горизонтально, зліва направо.
Розмір кожного символу встановлюється параметром CharSize, діапазон зміни якого становить від 1 до 10. Стандартне значення CharSize для матричного шрифту 8x8 дорівнює одиниці, а для штрихових шрифтів - чотирьом. p> При кожному виклику процедурою SetTextStyle -якого шрифту він читається з диска і завантажується в пам'ять. p> Щоб визначити результат читання файлу шрифту з диска і завантаження його в пам'ять, можна перевірити значення функції CraphResult. Перелік значень, повертаються нею у цьому випадку, наведено у таблиці.
GraphResult
Сенс значення
0
Успішне виконання операції
-8
Файл CHR не знайдене
-9
Бракує пам'яті для завантаження вибранногошріфта
-11
Помилка графіки
-12
Помилка вводу-виводу графіки
-13
Неправильне вміст файлу шрифту
-14
Неправильний номер шрифту
{Демонстрація шрифтів }
Program SetStDem;
Uses Graph;
const
text: array [1 .. 4] of string [14] =
('TripLexFont', 'SmallFont', 'SansSerifFont', 'GothicFont');
s4 = ', size 4';
s5 = 'and 5';
Var
d, r, e, i: integer;
Begin
d: = Detect;
InitGraph (d, r,'');
e: = GraphResult;
if e <> grOk then
writeln (GraphErrorMsg (e))
else
begin
SetTextStyle (DefaultFont, HorizDir, 1);
OutText ('DefaultFont, size 1');
SetTextStyle (0,0,2);
OutText ('and 2');
for i: = 1 to 4 do begin
SetTextStyle (i, 0,4);
Moveto (10, i * 40);
OutText (text [i] + s4);
SetTextStyle (i, 0,5);
Outtext (s5);
end;
for i: = 1 to 4 do begin
SetTextStyle (i, 1,4);
Moveto (GetMaxX div 2 + i * 40-20,0);
OutText (text [i]);
end;
readln;
CloseGraph;
end
End.
В
Безпосередній висновок рядків
Для виведення тексту є дві процедури. Перша - OutText (TextString: String ) виводить на графічний екран рядок TextString , орієнтовану щодо позиції поточного покажчика, а друга OutTextXY ( X , Y : b> Integer ; TextString : String } виводить рядок, орієнтовану щодо координат (X, Y). Шрифт попередньо може бути встановлений викликом SetTextStyle (за замовчуванням приймається DefaultFont). Розглянемо орієнтування рядка щодо стартової точки. Існує кілька варіантів орієнтування. Вони задаються процедурою SetTextJustify (Horizontal, Vertical : Word ), параметри якої можуть приймати одне з трьох оголошених в модулі Graph значень:
CONST
{- Для горизонтального орієнтування (Horizontal) -}
LeftText
= 0;
{координата X задає лівий край рядка}