【问题标题】:ESC/POS printer cuts paper before printing all content in bufferESC/POS 打印机在打印缓冲区中的所有内容之前剪纸
【发布时间】:2018-01-25 00:30:09
【问题描述】:

我正在编写代码(在 C# 中)将收据打印到 ESCPOS 打印机,目前使用 EPSON TM20II 进行测试。我直接在 Linux 上的 COM 端口上打印,并在 Windows 上通过 USB 上的模拟 COM 端口进行打印。虽然我可以正常打印任何类型的评论,但我在剪纸时遇到了问题。

更具体地说,如果我在其余内容之后发送剪纸命令 (GS V 0) 并将整个字节流发送到端口,则打印机会在打印最后几行内容之前剪纸。

一开始我以为是时间问题,所以我尝试发送其余内容,然后等待一小段时间再发送剪切命令,但无济于事。

这是我使用的代码示例以及我发送到打印机的缓冲区内容,该打印机未能在正确的位置裁切纸张。

printer.Reset();
printer.SetTextAlignment(TextAlignment.Center).PrintTextLine(" 1234567890 ");
printer.SetTextSize(TextSize.Quadruple).PrintTextLine(" 1234567890 ");
printer.CutPaper();
printer.Print();

产生以下(十六进制)输出发送到打印机:

1B-40-1B-74-0F-1B-61-01-20-31-32-33-34-35-36-37-38-39-30-20-0D-0A-1B-21-30-20-31-32-33-34-35-36-37-38-39-30-20-0D-0A-1D-56-00

【问题讨论】:

    标签: escpos


    【解决方案1】:

    Kalhspera!

    切割机构和热敏打印头之间有一段距离。所以在你发送切纸命令之前,你必须先送纸一点。一种解决方案是在发送切纸命令之前发送几个换行符。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-11-16
      • 2014-12-14
      • 1970-01-01
      • 1970-01-01
      • 2017-10-21
      • 1970-01-01
      • 2014-08-25
      相关资源
      最近更新 更多