fastreport/reportMachine报表用连续纸打印的问题。另外一个帖子的50分加到这里。共94分(因邮件原因无法确认帐号,全部家当了,请大家见晾)

F

fccp

Unregistered / Unconfirmed
GUEST, unregistred user!
fastreport/reportMachine报表用连续纸打印的问题。另外一个帖子的50分加到这里。共94分(因邮件原因无法确认帐号,全部家当了,请大家见晾)(44分)<br />连续纸的报表打印问题
我的报表打印用的是连续纸,既一箱打印纸其实是一张大纸,每隔一定长度就有一些象邮票一样的针孔,可以方便你撕成一张张的小纸,这种纸好象是针式打印机专用。我用的不是标准的宽行打印纸和窄行打印纸,是自定义大小的连续纸,用LQ1900K针式打印机。
报表只有一页纸时打印正常,但多于一页时,第一页正常,打印完每一页后,打印机会走纸一定长度,这样从第二页开始打印位置全部错乱了。
请问如何解决该问题?
谢谢!
我使用rm26,delphi6,win98
我另有一个帖子http://www.delphibbs.com/delphibbs/dispq.asp?lid=1767453
估计无解,到时把那50分一起加给解决问题的大虾
 
楼主连续纸有多长,打印机的页长有最小限度,如果太短了,就会出现你说的情况
如果超过最小页长,一般可以通过设置打印机与报表的页面设置的自定义纸张
精确控制走纸
 
yczjs:
我的纸张类型是:宽21.7CM 高9.3CM,不知道是不是象你说的小于最小页长?
因为我的纸张不是RM中定义的标准宽行连续纸和窄行连续纸,宽度和高度都不同。我只能用“自定义纸张”类型,因此可能系统无法识别,可能RM把所有自定义纸张都当成A4纸那样一张张打,一张张走纸换页造成的。如果是这样,我想让RM把我的自定义纸张当成连续纸来处理,怎么办?
难道RM只能打印WHF事先定义标准宽行连续纸和窄行连续纸?别的大小的连续纸怎么让RM当作是连续纸来处理?
打印机是EPSON LQ1900K类型,驱动是WIN98自带的EPSON LQ1900K,
 
这种非标准的纸也能打印的(我在一套程序中就有这种例子,用了很长时间了),最主要的是纸张尺寸要准确,你用尺量量即可,或者改个尺寸多试几次,rm肯定支持这种打印!
 
whf说行就一定行了!谁叫RM是他写的呢.
 
我也是有这个问题,我用的Rm2.6+delphi7
请问whf兄,我能否让打印机停下来在打印完成后,比如一条记录,打完就停而不是走完整张纸,谢谢!
 
正在做,还不知道行不行,你可以试试(页面设置中设置一下)
http://www.reportmachine.net/download/demo.rar
 
whf:
我的纸张尺寸是用尺子量的,保证精确到毫米。我的报表是套打信封(类似特快专递的信封),要求打印位置能精准定位。
把纸张的长度改短,使其刚好凑准打印机走纸的长度的方法,有这样的缺陷
1、不同的打印机会有不同的结果,不通用
2、报表要求在靠近页脚的地方打印数据时,这种方法根本就不行。
你发来的DEMO我正在试
 
whf,我看到你新发的demo有vcdelphi要的既打既停功能,但是还没发现有自定义连续纸的功能。建议你干脆在页面设置增加一个“自定义连续纸”的选项算了,WHF大侠意下如何?
 
高9.3cm,好像也太短了吧,应该不能设这么短,你也可以通过调页边距试试吧!
我之前也帮客户调这种类型的报表,真烦死了,要调很多遍才能确定大小!
而且要每一页都不能超出,不能少,好可怜喔!
 
我也有这种纸,但是有些的走纸好像不够精确,打个几页就不行了,要平推
还有个窍门就是FastReport可以在运行的时候从个文件Load,这样就可以现场调了
就快多了
 
与我的问题相同
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1947095
to:liuj0771
请问你是如何解决的。
 
liuj0771
你说的
"还有个窍门就是FastReport可以在运行的时候从个文件Load,这样就可以现场调了"
是指,说详细点行吗?
 
精确设定页长就可以了,
有孔的纸,两个孔是一个英寸
 
liuj0771:
你是指用frREport.loadformfile(...)...来调入报表吗?我是这么做的,不过好象对打印结果没什么影响。
LiChaoHui:
我的纸张页长保证设置精确到毫米,用尺子量的。
 
lphjj:
虚拟打印机我没试过,正准备试,谢谢提示
 
楼主:你的报表宽21.7CM 高9.3CM是正常规格,不会太小。
按以下方法设置应该没有问题:
Report Option : Virtual Printer
Page Option -- Paper Size : Custom(width:217mm,length:92mm)
我用LQ-300K在win9x,win2000下都能正常打印。
我没有用1900k测试过。
 
不好意思,上个星期出差了,没有及时回复大家。等我将手头的事情料理了,测试过再给大家散分。
duancy老兄的口气这么肯定,相信这次应该没问题了,呵呵!
 
精确到mm是不够的,fr用mm作单位的话要精确到0.1mm
就算如此,由于设备的dpi不相同,以及计算机的象素与物理设备的mm单位的不同,误差是绝对不可免的.
最终连续打印太多张总会有误差的,一般来说,连续十张误差累计在1-2cm都是可以接受的,不过在自动切纸后,这个误差应该立即归位,也就是0.
 
昨天抽空试了虚拟打印机,发现到了打印时,虚拟打印机会自动变为默认打印机。我的默认打印机是HP laserjet 6000CL激光打印机,于是我就在打印预览里的打印设置里改变打印机设置为LQ1900K,出现了“list out of bounds"的错误提示。我用的是自定义数据集。
把lq1900k设为默认打印机我还没试,这两天再试,实在太忙。不过就算行,也应算是RM的BUG吧。
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
顶部