Exemple #1
0
 private void PrintItem(IEscPosPrinter printer, string left, string right)
 {
     printer.LeftMargin(50);
     printer.Write(left);
     printer.LeftMargin(168);
     printer.Write(right);
     printer.NewLine(1);
 }
Exemple #2
0
 private void PrintItem(IEscPosPrinter printer, int leftMargin, int rightMargin, string left, string right, int rowHeigth = 15)
 {
     printer.LeftMargin(leftMargin);
     printer.Write(left);
     printer.LeftMargin(rightMargin);
     printer.Write(right);
     printer.NewLine();
     printer.RowHeight(rowHeigth);
 }
Exemple #3
0
 /// <summary>
 /// 初始化一个<see cref="TestBase"/>类型的实例
 /// </summary>
 /// <param name="output">输出</param>
 public TestBase(ITestOutputHelper output)
 {
     Output = output;
     Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
     Printer = new EscPosPrinter();
 }
Exemple #4
0
        /// <summary>
        /// 循环打印项
        /// </summary>
        /// <param name="printer">打印</param>
        /// <param name="totalPage">总页数</param>
        /// <param name="currentPage">当前页</param>
        private void CyclePrintItem(IEscPosPrinter printer, int totalPage, int currentPage)
        {
            printer.Initialize();
            printer.Left();
            printer.Write($"{currentPage}/{totalPage}");
            printer.NewLine();

            printer.Initialize();
            printer.Center();
            printer.Code128($"b0201902134-{currentPage}", BarcodePositionType.Below, BarcodeWidth.Default, 100, true);
            printer.NewLine();

            printer.Initialize();
            printer.Left();

            var order = "Y20190618000001";

            printer.FontType(FontType.Compress2);
            printer.FontSize(FontSize.Size1);
            printer.LeftMargin(30);
            printer.Write("运单号");
            printer.LeftMargin(160);
            printer.Write(order.Substring(0, order.Length - 4));
            printer.FontType(FontType.Normal);
            printer.FontSize(FontSize.Size1);
            printer.Write(order.Substring(order.Length - 4, 4));
            printer.RowHeight(30);
            printer.NewLine();

            printer.Initialize();
            printer.Left();
            printer.FontType(FontType.Compress2);
            printer.FontSize(FontSize.Size1);
            printer.RowHeight(30);
            PrintItem(printer, 0, 160, "配送中心", "天河高志体验店", 30);
            PrintItem(printer, 0, 160, "配送划区", "隔壁老王", 30);
            PrintItem(printer, 0, 160, "配送时段", "2019-06-24 14:00-18:00", 30);
            PrintItem(printer, 30, 160, "收货人", "来自隔壁老王的新手大礼包", 30);
            PrintItem(printer, 0, 160, "联系电话", "18975927788", 30);
            var content = "广州市天河区黄埔大道广州市天河区黄埔大道广州市天河区黄埔大道广州市天河区黄埔大广州市天河区黄埔大";

            PrintItem(printer, 0, 160, "收货地址", content, 30);

            var line = GetLines(content, 26);

            printer.Initialize();

            switch (line)
            {
            case 1:
                printer.Write(new byte[] { 0x1B, 0x4A, 222.ToByte() });
                break;

            case 2:
                printer.Write(new byte[] { 0x1B, 0x4A, 155.ToByte() });
                break;

            case 3:
                printer.Write(new byte[] { 0x1B, 0x4A, 100.ToByte() });
                break;

            case 4:
                printer.Write(new byte[] { 0x1B, 0x4A, 40.ToByte() });
                break;
            }
        }