用打印机的点数做度量单位
如果想让打印程序在任何打印机上都能正常地打印,
你就必须改变你的度量单位。如果采用固定的度量,
不同分辨率的打印效果是不同的。
举例来讲:printer?Canvas?rectangle(0,0,360,720)
在360×360的佳能4200SP上能打出一个1英寸宽、2英寸高的矩形,
但在600×600的惠普6L上只能打出0?6英寸宽、1?2英寸高的矩形。
使用打印机的点数做为度量单位是一个明智的选择。
具体做法如下:VarPointX,PointY:integer;PointX:=GetDeviceCaps(printer?Handle,LOGPIXELSX);
PointY:=GetDeviceCaps(printer?Handle,LOGPIXELSX);
printer?Canvas?rectangle(0,0,PointX*1,PointY*2)
这样,无论你使用什么样的打印机,都能得到一个1英寸宽、2英寸高的矩形。