Изменяет размер выводимых символов в соответствии с заданными пропорциями. Заголовок:
Procedure SetUserCharSize(XI,X2,Yl,Y2: Word);
Здесь X1...Y2 – выражения типа Word, определяющие пропорции по горизонтали и вертикали.
Процедура применяется только по отношению к векторным шрифтам. Пропорции задают масштабный коэффициент, показывающий, во сколько раз увеличатся ширина и высота выводимых символов по отношению к стандартно заданным значениям. Коэффициент по горизонтали находится как отношение X1 к Х2, по вертикали – как отношение Y1 к Y2. Чтобы, например, удвоить ширину символов, необходимо задать X1=2 и Х2=1. Стандартный размер символов устанавливается процедурой SetTextStyle, которая отменяет предшествующее ей обращение к SetUserCharSize.
В следующем примере демонстрируется изменение пропорций уменьшенного шрифта.
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
MoveTo (0, GetMaxY div 2); SetTextStyle (SmallFont, HorizDir, 5);
SetTextJustify (LeftText, BottomText);
{Выводим сообщение стандартной высотой 5}
OutText ('Normal Width,');
{Удваиваем ширину шрифта}
SetUserCharSize (2, 1, 1, 1);
OutText (' Double Width, ');
{Удваиваем высоту, возвращаем стандартную ширину}
SetUserCharSize (I, 1, 2, 1) ;
OutText ('Double Height,');
SetUserCharSize (2, 1, 2, 1) ;
OutText (' Double Width and Height');
if ReadKey=#0 then d := ord(ReadKey);
CloseGraph
end
end.