为了解决不同的计算机,打印时所出现的偏差问题(用的是A3纸,FASTREPORT控件)
用如下程序
var Margin: TPoint;
begin
Margin.x := GetDeviceCaps(Printer.Handle, PHYSICALOFFSETX);
Margin.y := GetDeviceCaps(Printer.Handle, PHYSICALOFFSETY);
showMessage('x:' + IntToStr(Margin.x) + ' ' + 'y:' + IntToStr(Margin.y));
end;
查出相同的一台打印机,在2000下,得到的是x:23 y:60,可在98下面,我看到的是x:0 y:0
所以打印出来的东西位置相差太大,请问有什么办法可以设置系统当前的打印机边距?
用如下程序
var Margin: TPoint;
begin
Margin.x := GetDeviceCaps(Printer.Handle, PHYSICALOFFSETX);
Margin.y := GetDeviceCaps(Printer.Handle, PHYSICALOFFSETY);
showMessage('x:' + IntToStr(Margin.x) + ' ' + 'y:' + IntToStr(Margin.y));
end;
查出相同的一台打印机,在2000下,得到的是x:23 y:60,可在98下面,我看到的是x:0 y:0
所以打印出来的东西位置相差太大,请问有什么办法可以设置系统当前的打印机边距?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货