Иллюстрированный самоучитель по Turbo Pascal

Вывод текста

SetTextStyle(l,0.4);
Y: = 0;
OutTextWi thTab('N','Name',Size','Symbols');
{Определяем высоту Y линии заголовка}
Y: = 4*TextHeight('Z') div3;
Line(0,Y,GetMaxX,Y);
{Определяем начало Y таблицы и высоту dY каждой строки}
Y: = 3*TextHeight('Z') div 2;
dY: = (GetMaxY-Y) div (MaxFont);
{Готовим строку символов}
SymbT: = '';
for с: = 'a' to 'z' do
SymbT: = SymbT+c;
{Цикл вывода строк таблицы}
for k: = 1 to MaxFont do
begin
Size: = 0;
{Увеличиваем размер до тех пор, пока высота строки не станет приблизительно равна dY}
repeat
inc(Size);
SetTextStyle(k,0,Size+1);
until (TextHeight('Z')>=dY) or (Size=10)
or (Textwidth(FontNames[k])>(Tab2-Tab1));
{Готовим номер NT и размер SizeT шрифта}
Str(k,NT);
Str(Size,SizeT);
{Выводим строку таблицы}
SetTextStyle(k,HorizDir,Size);
OutTextWithTab(NT,FontNames[k],SizeT,SymbT);
inc(Y,dY)
end;
{Рисуем линии рамки}
Rectangle(0.0,GetMaxX,GetMaxY);
Line(Tab1.0,Tabl,GetMaxY);
Line(Tab2.0,Tab2,GetMaxY);
Line(Tab3.0,TabЗ,GetMaxY);
{Ждем инициативы пользователя}
ReadLn;
CloseGraph
end
end.

Процедура SetTextJustify

Задает выравнивание выводимого текста по отношению к текущему положению указателя или к заданным координатам. Заголовок:

Procedure SetTextJustify(Horiz,Vert: Word);

Здесь:

  • Horiz – горизонтальное выравнивание;
  • Vert – вертикальное выравнивание.

Выравнивание определяет как будет размещаться текст – левее или правее указанного места, выше, ниже или по центру. Здесь можно использовать такие константы:

const
LeftText = 0;{Указатель слева от текста}
CenterText= 1;{Симметрично слева и справа,верху и снизу}
RightText = 2;{Указатель справа от текста}
BottomText= 0;{Указатель снизу от текста}
TopText = 2;{Указатель сверху от текста}

Обратите внимание на неудачные, с моей точки зрения, имена мнемонических констант: если, например, Вы зададите LeftText, что в переводе означает "Левый Текст", сообщение будет расположено справа от текущего положения указателя (при выводе процедурой OutTextXY – справа от заданных координат). Также "наоборот" трактуются и остальные константы.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.