...
 try
   x:=20;
   y:=200;
        repeat   //此处为何要用repeat? 
              printer.BeginDoc;
              with printer.Canvas do begin
                adoquery1.First;
                while (not adoquery1.Eof) do                begin......