如何实现ESC指令打印小票

发布时间:2022-01-15 11:52:48 作者:小新
来源:亿速云 阅读:446

这篇文章主要介绍如何实现ESC指令打印小票,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

先看效果图

如何实现ESC指令打印小票

实现一个外卖小店的打印小票格式。

代码如下:

            char[] QRCODEchars1 = new char[] { (char)29, (char)40, (char)107, (char)15, (char)0, (char)49, (char)80, (char)48 };//条码

            string QRCODEstr1 = new string(QRCODEchars1);

            char[] QRCODEchars2 = new char[] { (char)29, (char)40, (char)107, (char)15, (char)0, (char)49, (char)81, (char)48 };

            string QRCODEstr2 = new string(QRCODEchars2);

            string Center = new string(new char[] { (char)27, (char)97, (char)49 });//居中

            string Left = new string(new char[] { (char)27, (char)97, (char)48 });///居左        

            string Size1 = new string(new char[] { (char)29, (char)33, (char)0 });///小字体                          

                          string Size2 = new string(new char[] { (char)29, (char)33, (char)17 });///最大号字体

            string EnabledUnderline2 = new string(new char[] { (char)27, (char)45, (char)2 });

            string DisabledUnderline = new string(new char[] { (char)27, (char)45, (char)0 });

            string print2 = "";

            print2 += Left + System.Environment.NewLine;

            print2 += Size2 + System.Environment.NewLine;

            print2 += "1商家小票" + System.Environment.NewLine;

            print2 += "________________________" + System.Environment.NewLine;

            print2 += Center + System.Environment.NewLine;

            print2 += "*1小顺外卖*" + System.Environment.NewLine;

            print2 += Size1 + System.Environment.NewLine;

            print2 += "XXXX大食堂" + System.Environment.NewLine;

            print2 += Left + System.Environment.NewLine;

            print2 += "下单时间:2020/5/25 9:41:36" + System.Environment.NewLine;

            print2 += "***********************************************" + System.Environment.NewLine;

            print2 += Size2 + System.Environment.NewLine;

            print2 += "素什锦 X 1  12.00" + System.Environment.NewLine;

            print2 += Size1 + System.Environment.NewLine;

            print2 += "___________________其他______________________" + System.Environment.NewLine;

            print2 += "包装费:   0.00" + System.Environment.NewLine;

            print2 += "商品费用:12.00" + System.Environment.NewLine;

            print2 += "配送费用: 0.00" + System.Environment.NewLine;

            print2 += "老人立减:12.00" + System.Environment.NewLine;

            print2 += "合计:    12.00元" + System.Environment.NewLine;

            print2 += "______________________________________________" + System.Environment.NewLine;

            print2 += Left + System.Environment.NewLine;

            print2 += Size2 + System.Environment.NewLine;

            print2 += "张(先生)" + System.Environment.NewLine;

            print2 += "顾客号码:手机尾号5716" + System.Environment.NewLine;

            print2 += Size1 + System.Environment.NewLine;

            print2 += "虚拟号码:1234567891 转568" + System.Environment.NewLine;

            print2 += "顾客地址:XX市,XX区,XXXXX中心" + System.Environment.NewLine;

            print2 += "【若无法拨通.............】" + System.Environment.NewLine;

            print2 += "__________________请扫描二维码_________________" + System.Environment.NewLine;

            print2 += Center + System.Environment.NewLine;

            print2 += QRCODEstr1 + "6S_1236S_123" + QRCODEstr2 + System.Environment.NewLine;

            print2 += "Thank You For Your Support!" + System.Environment.NewLine;

字体大小调整

我们可以写一个简单的代码块运行来看下效果:

for (int i = 0; i <= 32; i++)

            {

                print2 += new string(new char[] { (char)29, (char)33, (char)i });///小字体 + System.Environment.NewLine;

                print2 += "永";

            }

根据第三个参数的数值大小,对应字体大小设置也会发生改变。

如何实现ESC指令打印小票

二维码参数如何给值?

比如上面实例中“QRCODEstr1 + “6S_1236S_123” + QRCODEstr2”中的"6S_1236S_123"就是设置的二维码内容。那么二维码的内容长度在实例化时该怎么定义呢?

我们先来看一下ESC指令规则:

如何实现ESC指令打印小票

根据指令规则得出:二维码内容位数+3。

我们示例中二维码内容“6S_1236S_123 ”是12位,因此,实例化二维码时定义的长度为15即可。如下:

char[] QRCODEchars2 = new char[] { (char)29, (char)40, (char)107, (char)15, (char)0, (char)49, (char)81, (char)48 };

以上是“如何实现ESC指令打印小票”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

推荐阅读:
  1. C#小票打印(通用)
  2. 如何理解ESC欠费时的 API 行为

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

esc

上一篇:STM32F429如何使用定时器多路HC-SR04超声波输入捕获

下一篇:springboot整合quartz定时任务框架的方法是什么

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》