各位我现在在写一个打印收据的东西,就像电信或银行里的的收据打印,要求打印出去的每一个字都能够准确的落在原来的表格之内(打印的纸张上已经有现成的表格,只要在规定的地方在打上字就可以了)
怎么做那?有些人好像是先把票据扫描,然后再确定打印位置,但我不知怎么用?谁能告诉我呢?不胜感激!
怎么做那?有些人好像是先把票据扫描,然后再确定打印位置,但我不知怎么用?谁能告诉我呢?不胜感激!
解决方案 »
- 如何判断网路状态
- 这个是什么原因?Incompatible types: 'TCaption' and 'PChar'
- fastreport 3.X 如何控制每页固定显示30行!如果超过30行自动转到下页
- 动态创建一个 TMemo 组件如何写?
- 请教SQL视图的问题?急急……
- Mysql 是否支持ADO连接,如果支持怎么连接
- 如何判断ShockwaveFlash控件的URL是否可用,也就是说是否找到了播放文件
- 谁能帮我看看我为什么hook不到ws2_32.dll的recv[附代码]
- 关于TStringGrid的一个问题,多谢了
- 请教一个有关安装的问题(急!急!)
- 各位数据API和数据库高手请进......
- 送分,求解代码
我试过,一点麻烦!
with printer do begin
BeginDoc; //开始一个打印任务
Canvas.Font.Size :=12; //设置打印的字体
Canvas.TextOut (150,55,r_SysInfo.StationName); //在150,50位置打出收费站名称
Canvas.TextOut (170,70,_getrmb(strtoint(vartostr(CarPrice))));
Canvas.TextOut (330,70,vartostr(CarPrice)+'元');
Canvas.TextOut (120,85,inttostr(r_TradeInfo.WayNo));
Canvas.TextOut (190,85,formatfloat('000000',r_Userinfo.No));
Canvas.TextOut (300,85,copy(datetimetostr(now()),3,2)+formatfloat('00000000',r_UserInfo.CurrentBillNo-1));
Canvas.TextOut (120,100,datetimetostr(date()));
Canvas.TextOut (300,100,timetostr(time) );
end;
Finally
printer.EndDoc; //结束一个打印任务
end;
扫描票据,最好是得到矢量图档
然后最好是用QuickRep.Picture把图版load 进来。
好了
把你要贴的东西放到报表上就行了。这时已经有表格了(就是扫描的图)