R
ranyang
Unregistered / Unconfirmed
GUEST, unregistred user!
用mapx控件,需要打印地图,利用:
uses
printers;
//打印当前地图 //打印当前地图 工具栏
procedure TfrmMainForm.dxBarButton14Click(Sender: TObject);
begin
try
Printer.Orientation:=poLandscape;//设置横向打印
with printer do
begin
beginDoc;
TMdiFrmMap(ActiveMDIChild).Map1.PrintMap(printer.Handle,0,0,TMdiFrmMap(ActiveMDIChild).map1.Width*40,TMdiFrmMap1(ActiveMDIChild).map1.Height*30);
endDoc;
end;
except
end;
end;
可是在打印时出现了问题?
(A4纸)
1,后面的width*40和height*30是在Screen界面分辨率为1024*768测试调出来的,打印刚好。
2,但是换一种分辨率就不行了,不是超出就是不够,
现在通过什么样的办法根据分辨率自动调试。width*?和height*?的?参数必须是integer
uses
printers;
//打印当前地图 //打印当前地图 工具栏
procedure TfrmMainForm.dxBarButton14Click(Sender: TObject);
begin
try
Printer.Orientation:=poLandscape;//设置横向打印
with printer do
begin
beginDoc;
TMdiFrmMap(ActiveMDIChild).Map1.PrintMap(printer.Handle,0,0,TMdiFrmMap(ActiveMDIChild).map1.Width*40,TMdiFrmMap1(ActiveMDIChild).map1.Height*30);
endDoc;
end;
except
end;
end;
可是在打印时出现了问题?
(A4纸)
1,后面的width*40和height*30是在Screen界面分辨率为1024*768测试调出来的,打印刚好。
2,但是换一种分辨率就不行了,不是超出就是不够,
现在通过什么样的办法根据分辨率自动调试。width*?和height*?的?参数必须是integer