Заголовок:
Procedure SetTextJustify(Horiz,Vert: Word);
Здесь Horiz - горизонтальное выравнивание; Vert - вертикальное выравнивание. Выравнивание определяет как будет размещаться текст - левее или правее указанного места, выше, ниже или по центру. Здесь можно использовать такие константы:
const
LeftText = 0;{Указатель слева от текста}
CenterText= 1;{Симметрично слева и справа,верху и снизу}
RightText = 2;{Указатель справа от текста}
BottomText= 0;{Указатель снизу от текста}
TopText = 2;{Указатель сверху от текста}
Обратите внимание на неудачные, с моей точки зрения, имена мнемонических констант: если, например, Вы зададите LeftText, что в переводе означает «Левый Текст», сообщение будет расположено справа от текущего положения указателя (при выводе процедурой OutTextXY - справа от заданных координат). Также «наоборот» трактуются и остальные константы.
Следующая программа иллюстрирует различные способы вырав-нивания относительно центра графического экрана.
Uses Graph, CRT;
var
d, r, e : Integer;
begin
{Инициируем графику}
d := Detect; InitGraph(d,, r, ' ') ;
e := GraphResult;
if e <> grOk then
WriteLn(GraphErrorMsg(e))
else
begin
{Выводим перекрестие линий в центре экрана}
Line(0,GetMaxY div 2,GetMaxX,GetMaxY div 2);
Line(GetMaxX div 2,0,GetMaxX div 2,GetMaxY);
{Располагаем текст справа и сверху от центра}
SetTextStyle(TriplexFont,HorizDir,3);
SetTextJustify(LeftText,BottomText);
OutTextXY (GetMaxX div 2, GetMaxY div 2, 'Left-Text,BottomText');
{Располагаем текст слева и снизу}
SetTextJustify (RightText, TopText);
OutTextXY (GetMaxX div 2, GetMaxY div 2,'RightText, TopText');
if ReadKey=#0 then d := ord(ReadKey);
CloseGraph
end
end.
|