爱普生打印收据对齐问题

EPSON print receipt alignment issue

我想对我的收据进行适当的对齐,目前我可以像图片中那样对齐currently getting the receipt like this

为了实现正确对齐,我尝试了两种方法,在单行中我试图同时提及左对齐和右对齐,但这没有用,因为 epson 不允许在同一行上同时对齐 然后我尝试在现金和金额之间添加空白space,但有时由于描述较长,金额可能会进一步向右移动,因此它不稳定,所以有人可以告诉我正确对齐的正确方法

self.receiptText += alignLeft + tndrDesc + "\n";
self.receiptText += alignRight + formatTdrAmt + "\n";

但是上面的代码在金额上面的一行中给出了描述,但是如果我不使用\n它会出现在同一行而不是右对齐

打印请求的字符串最好由应用程序自己编辑,而不是打印机的功能。

例如,假设您要打印 32 列。

如果每个字符都在SBCS(Single Byte Character Set)范围内,则请求打印该字符串可以得到相同位数的打印结果。


考虑添加来源。

在这种情况下,不需要 alignLeftalignRight

而不是突然添加到 self.receiptText,使用工作变量。

流程如下。

printlineWork = tndrDesc + '                                  '; // 34 columns space character
printlineWork = printlineWork.substring(0, 34);
printlineWork += ('        ' + formatTdrAmt).slice(-8) + '\n'; // 8 columns space character
self.receiptText += printlineWork;

根据需要调整数字位置。