前言

工作中有遇到Barcode打印的需求,最开始是通过打印机型号找到对应的打印机,再进行操作,但是需要匹配的打印机型号太多,而且不定,所以处理起来太过麻烦。

后面通过找到通过串口找到打印机,直接传输命令的方式操控打印机。

(经测试,Zebra和TSC两种类型的打印机均可打印成功)

一、简单了解打印机ZPL命令

 二、ZPL命令测试地址

http://labelary.com/viewer.html

三、连接串口Com的通信方式

1、导包

using System.IO.Ports;

2、打印代码

private void Print()
{
SerialPort serialPort = new SerialPort();//创建串口实例
serialPort.PortName = "COM1";//串口名称
try
{
serialPort.Open();//打开串口
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);//将异常信息传递给用户
return;
}
string serialString = "^XA";//开始
serialString = serialString + "^LH0,0^FS";//偏移量
serialString = serialString + "^FO32,10^ABN,9,5^FD" + "First Line" + "^FS";//32,10即开始位置(x,y); ABN即字体大小,AAN<ABN<ACN<ADN……;^FD为行开始,^FS为行结束
serialString = serialString + "^FO50,25^BY2,3,50^BE,,,^FD" + "Barcoed12345" + "^FS";
serialString = serialString + "^FO45,96^AAN,9,5^FD" + "Third Line" + "^FS";
serialString = serialString + "^PQ1";
serialString = serialString + "^XZ";//结束
serialPort.Write(serialString);
//serialPort.WriteLine(serialString);//也可以一行一行地打印,效果一样
serialPort.Close(); //Close specified printer driver
}

另外:

USB等其他接口此方式是否可以通过这种方式打印没有测试,但也有测试成功的USB打印方式,需要使用到TSCLib.dll,后期再补一份使用TSCLib.dll的打印blog。

最新文章

  1. AppStore下载失败使用已购页面再试一次解决方法
  2. 使用jna调用dll,jdk位数和dll位数的关系
  3. 字符串匹配的KMP算法——Python实现
  4. ZJOI Day 2 游记
  5. 7 天玩转 ASP.NET MVC — 第 5 天
  6. rman catalog (rman 恢复目录)
  7. Java内存分配及垃圾回收机制(未完待待续)
  8. Linux入门之常用命令(11) 系统监控 vmstat top
  9. iOS 超大高清图展示策略 TileLayer 及 levelsOfDetailBias 分析
  10. ssh 端口转发实践
  11. linux修改用户id,组id
  12. idea加载JSTL库
  13. postgresql远程连接中断的处理
  14. AngularJS中Directive指令系列 - 基本用法
  15. 【mysql经典题目】行转列
  16. 爬虫之urllib包以及request模块和parse模块
  17. 第1课:接口测试和jmeter总结
  18. 使用 Git 对原理图和线路板时行版本控制
  19. python模块与包详解
  20. ASP.NET SignalR 与 LayIM2.0 配合轻松实现Web聊天室 实战系列(内容已过期,阅读请慎重)

热门文章

  1. spring时遇到的小问题
  2. java 匿名对象与内部类
  3. 2020-07-24:聊一下zookeeper的同步算法。
  4. 2020-03-27:分布式锁的问题,假如a线程在获得锁的情况下 网络波动 极端情况是断网了,这种情况是怎么处理的
  5. 【建议收藏】swoft的最佳实践
  6. SpringBoot 集成SpringSecurity JWT
  7. 【Hyeri】上传本地代码到Github
  8. ajax、反向ajax、jsonp详解
  9. python - 常用数据清洗方法-重复项处理
  10. 简单实现C++Stack模板