2

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

对于 POS 命令,我使用的是从 Nuget 下载的 dll:PrinterUtility

PrinterUtility.EscPosEpsonCommands.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 命令生成 Barcode Code128 和 CutPage 命令

4

2 回答 2

0

一种解决方案如下所示:

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();
}
于 2018-08-07T09:59:53.987 回答
-1
var BytesValue;
BytesValue = PrintExtensions.AddBytes(BytesValue, obj.BarCode.Code128("12345"));
于 2020-06-14T12:12:18.630 回答