【问题标题】:ESC/POS printing barcode aligned vertically and horizontally in the middle?ESC/POS打印条码在中间纵横对齐?
【发布时间】:2019-12-26 18:38:09
【问题描述】:

我的代码目前正在轻松打印条形码和 hri 文本,但我希望所有内容都打印在标签的中心位置。谁能告诉我什么时候应该声明对齐命令?
我尝试在开始和条形码打印命令之前声明它,但条形码仍在左上角打印。
这是我的对齐命令:

    def align_esc(self,esc,n):
        '''
        ESC|a|n
        0<=n<=2,48<=n<=50
        0,48 = Left; 1,49 = Mid; 2,50 = Right
        '''
        align = [esc,n]
        align_prnt = bytearray(align)
        return align

我不使用 escpos python 库的原因是因为我正在从 Android 设备打印。
编辑:
上述函数在第 7 行缺少以下字符:

align = [esc,97,n]

【问题讨论】:

    标签: python-3.x printing thermal-printer escpos


    【解决方案1】:

    在EPSON的ESC a命令说明中,有如下注释。
    您的打印机的ESC a 命令中是否有这些通知?

    • 选择标准模式时,仅在标准模式下在行的开头处理时才能启用此命令。
    • 对齐在页面模式下无效。
    • 此命令在GS LGS W 设置的打印区域中执行对齐。
    • 该命令对HT、ESC $ESC \设置的打印数据(字符、所有图形、条码、二维码等)和空间区域进行对齐。
    • 此命令的设置在执行ESC @、重置打印机或关闭电源之前有效。

    通常,ESC a 命令不是在行首之后指定,而是在打印几个字符或空格之后指定。

    例如,如果您使用纯文本而不是条形码进行打印并且它没有居中,则ESC a 不会在行首指定。
    更改ESC a 命令,使其在行首指定。

    但是,如果纯文本居中打印,则该功能可能不适用于条形码。
    在这种情况下,请联系打印机供应商以确定是否可以使用条形码对齐以及如何进行。
    或者没有自动功能,可能是用ESC \等调整打印位置的方法。


    水平方向的打印位置可以通过ESC $ESC \指定。
    只是计算的起点不同。 ESC $ 是纸张的左边缘,ESC \ 是当时的打印位置。
    您不需要使用GS P

    【讨论】:

    • 回答您的问题:Urovo K319 打印手册中唯一的注意事项是针对您的项目符号 1 和项目符号 4。所以我将标签打印在标签的垂直分拣中心。我注意到我上面的 ESC a 命令函数缺少“a”或 97 字符。但它不是水平居中,只是垂直排序。打印左侧的空间比打印右侧的空间大。如何设置水平轴?是ESC $ESC /ESC P 命令还是三者的组合?
    猜你喜欢
    • 2014-08-25
    • 2014-01-17
    • 1970-01-01
    • 2014-12-14
    • 2018-03-18
    • 2016-01-12
    • 2020-02-11
    • 2013-07-01
    • 1970-01-01
    相关资源
    最近更新 更多