...
uses Printers;
procedure TForm1.Button1Click(Sender: TObject);
procedure WriteAligned(Printer: TPrinter; const X, Y: Integer; const s: string);
begin
with Printer do
Canvas.TextOut(X+(X-Canvas.TextWidth(s)) div 2, Y, s);
end;
const
VALUES: array[1..3] of Currency = (1200, 350, 3400);
var
Prn: TPrinter;
P: TPoint;
i: Integer;
begin
Prn:= TPrinter.Create;
try
Prn.BeginDoc;
P.X:= 1800; P.Y:= Printer.PageHeight div 50; Prn.Canvas.Font.Name:= 'Currier New'; Prn.Canvas.Font.Color:= clBlack;
for i:= 1 to 3 do
WriteAligned(Prn, P.X, P.Y*i, FormatCurr('###,##0.00',VALUES[i]));
Prn.EndDoc;
finally
Prn.Free;
end;
end;