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