我使用连续的5“表格(预印)与我的发票申请表,似乎许多矩阵打印机不支持这5”表格长度。现在关键的问题是,在打印一个表单时,需要抛出另外两个表单以及换行符,因为FF代码导致连续表单不同步。我需要保持表单同步,以便下次软件打印到正确的位置。
我想知道反向换行是否可以解决这个问题,例如如果我的软件足够LF,那么它可以撕掉,并显示一个对话框,然后反向换行。
我的问题是,如何使用panasonic和epson打印机反转换行,还是有其他推荐的解决方案?
请注意,我使用Raw(文本输出)打印。
答案 0 :(得分:2)
如果应用程序是Windows应用程序(从Windows打印机驱动程序访问打印机),您的打印机属性应该允许您定义纸张格式,包括“用户定义的”(例如,请参阅Epson lx300+ documentation)。 这可能会改变换页的效果。
如果您的应用程序以文本模式运行打印机并使用ESC / P字符模式序列,则可以使用转义序列定义表单长度(以行为单位)。查看ESC / P用法应该可以帮助您将正确的序列发送到打印机。 ESC / P信息can be found here。
更具体地说,您可能需要的序列是:
27 67 n ESC C n Select page length in lines (n=1..127)
27 67 48 n ESC C 0 n Select page length in inches (n=1..22)
(但还有更多功能)
答案 1 :(得分:0)
使用一些非常古老的DOS / Foxpro时代的记忆,您可以只记录打印的行数,然后使用正确数量的LF移动到下一页。
您也可以使用ESC C n设置表格长度,其中n是行数。 See Epson printer control codes here由于每英寸的默认行数为6,您希望发送6 * 5,即30
像
这样的东西write(prt, $27'C', $30);
应该做的伎俩
Panasonic的基本控制代码与Epson类似。我还记得一些松下打印机可以自动弹出纸张撕下来,然后在下一个打印作业开始后倒带。