如何在EPSON打印机中打印条形码和切割页面ESC / POS命令



使用 POS 命令我面临 2 个问题

对于POS命令,我正在使用从Nuget下载的dll:打印机实用程序

PrinterUtility.EscPosEpsonCommand.EscPosEpson

1) 条形码不打印字母数字字符 在这一点上,

PrinterUtility.EscPosEpsonCommands.EscPosEpson obj = new PrinterUtility.EscPosEpsonCommands.EscPosEpson();
var ByteValue = PrintExtensions.AddBytes(ByteValue,obj.BarCode.Code128("454541234"));

它只接受数值而不是字母数字,所以我用另一种方式使用以下代码生成条形码,但没有生成条形码。

public byte[] BarcodeGenrate(string BarcodeNO)
        {
            string GS = "u001D";
            string ESC = Convert.ToString((char)27);
            string COMMAND = "";
            COMMAND = GS + "h" + 50;//Set barcode height
            COMMAND += GS + "H" + 2; //Select print position of HRI characters: 
            COMMAND += GS + "f" + 1; //Select font for HRI characters:
            COMMAND += GS + "k" + 4 + BarcodeNO + 0; //Print barcode: (A) format, barcode system = CODE39
            var result = System.Text.Encoding.Unicode.GetBytes(COMMAND);
            return result;
        }

2)剪切页:这也不起作用

 public byte[] CutPage()
        {
            string GS = Convert.ToString((char)29);
            string ESC = Convert.ToString((char)27);
            string COMMAND = "";
            COMMAND = ESC + "@";
            COMMAND = GS + "V" + (char)1;
            var result = System.Text.Encoding.Unicode.GetBytes(COMMAND);
            return result;
        }

请帮助我使用ESC/POS命令生成条形码代码128和CutPage命令

一种解决方案如下所示:

private byte[] CutPage() {
    List<byte> oby = new List<byte>();
    oby.Add(Convert.ToByte(Convert.ToChar(0X1D)));
    oby.Add(Convert.ToByte('V') 
    oby.Add((byte)66);
    oby.Add((byte)3);
    return oby.ToArray();
}
var BytesValue;
BytesValue = PrintExtensions.AddBytes(BytesValue, obj.BarCode.Code128("12345"));

最新更新