Вроде всё элементарно но...
Я рисую на канве Image'a прямоугольники типа:
Image1.Canvas.Brush.Style:=bsDiagCross;
Image1.Canvas.Brush.Color:=clAqua;
Image1.Canvas.Rectangle(0,0,200,150);
Затем пытаюсь печатать:
Printer.BeginDoc;
PointX:=GetDeviceCaps(Printer.Canvas.Handle,LOGPIX ELSX)/130;
PointY:=GetDeviceCaps(Printer.Canvas.Handle,LOGPIX ELSY)/130;
X1:=round((Printer.PageWidth-Image1.Width*PointX)/2);
Y1:=round((Printer.PageHeight-Image1.Height*PointY)/2);
X2:=round(X1+Image1.Width*PointX);
Y2:=round(Y1+Image1.Height*PointY);
Printer.Canvas.CopyRect(Rect(X1,Y1,X2,Y2),Image1.C anvas,
Rect(0,0,Image1.Width,Image.Height));
Printer.EndDoc;
Печатается, да, но... ПУСТАЯ страница!
Может подскажете, а то скоро истерика начнётся.... ещё и с женой поссорился... в общем дело жизненно важное...