ZPL指令打印

最近用指令做一个打印Code128和DataMatrix

 //开始命令符,设置打印纸张大小、打印的浓度,打印的速度,条码出于纸张的坐标

^XA^JMA^LL180^PW660^MD30^PR2^PON^LRN^LH10,0
    ^XA:标签格式^XA开始
    ^JM:设置每毫米点数(取决打印头)
    ^LL:设置标签长度
    ^PW:设置标签宽度
    ^MD:设置标签深度
    ^PR:设置打印速度
    ^PO:设置打印方向
    ^LR:设置标签反转(‘Y‘/‘N‘)
    ^LH:设置标签起点
//设置一维码Code128的格式
^FO52,90^BY2,3,50^BCN,50,N,N,N,A^FD$SN^FS
    ^FO:设置字段位置
    ^BY:
    ^BC:Code128,()
    ^FD:Field Data数据字段,限制100字符
    ^FS:字段分隔,表示字段定义结束
    ^A:缩放/点阵字体

^BC命令的格式:
  ^BCo,h,f,g,e,m


^BC

= Code 128条码

o

= 字体方向
    默认值:^FW默认值或上一个^FW的值。
    其他值: N = 正常 (Normal)
      R = 顺时针旋转90度(Roated)
      I = 顺时针旋转180度(Inverted)
      B = 顺时针旋转270度 (Bottom)

h

= 条码高度
    默认值:由^BY设置
其他值:1到9999点

f

= 打印注释行
    默认值: Y = 打印(Yes)
其他值:N = 不打印(No)
g = 将注释行打印在条码上方
    默认值: N = 不打印在条码上方
其他值: Y = 打印在条码上方
e = 打印UCC校验位
    默认值:Y = 打印(Yes)
其他值:N = 不打印(No)
m = 模式
    默认值:N = 不选择模式
其他值:U = UCC匹配模式。(^FD或^SN后必须有19位数字。)用FNC1值自动选择C子集。
版本16.3.0版本有效:
A = 自动模式。自动模式将分析收到的数据并自动决定选取最佳的压缩方式。^FD可以用全部ASCII字符。打印机将确定是否变化子集。四个及以上的数字将自动变化为C子集。

//设置二维码Data Matrix的格式

^FO485,8^BXN,6,200^FDZ2007203419,1100705042001,ZS565-110-001-1,ABCD1234^FS

^BX  Data Matrix 条码说明 ^BX 命令可以创建二维矩阵符号,它由由一个分布着多个小方块的正方形图案组成。格式 ^BXo,h,s,c,r,f,g,ao = 方向    : N = 正常R = 旋转 90 度(顺时针)I = 反转 180 度B = 逆时针 90 度读取h = 各个符号元素的空间高度   :接受的值:1 至标签宽度s = 规格级别   :接受的值:0、50、80、100、140、200默认值:0c = 要编码的列    :接受的值:9 至 49r = 要编码的行   :接受的值:9 至 49f = 格式 ID (0 至6) — 不用于设置为 200 的规格  :  1 = 字段数据为数字 + 空格(0..9、”) – 无 \&’’  2 = 字段数据为大写字母数字 + 空格(A..Z、’’) – 无 \&’’  3 = 字段数据为大写字母数字 + 空格、句号、逗号、虚线和斜线(0..9、A..Z、“.-/”)  4 = 字段数据为大写字母数字 + 空格(0..9、A..Z、’’) – 无 \&’’  5 = 字段数据为完整 128 ASCII 7 位字符集  6 = 字段数据为完整 256 ASCII 8 位字符集g = 换码序列控制符   :接受的值:任意字符默认值:~ (波浪符)a = 长宽比   :1 = 正方形2 = 矩形  默认值:1

//结束命令符
^PQ1^XZ
    ^PQ:设置打印数量
    ^XZ:标签格式以^XZ结束

时间: 2024-10-12 08:18:20

ZPL指令打印的相关文章

C# EPL USB 指令打印

1 private void btnPrinter_Click(object sender, EventArgs e) 2 { 3 4 #region ESC 热敏图像点阵像素点读取打印 5 6 //Bitmap bitmap = new Bitmap(@"D:\450X100.bmp"); 7 //NetPOSPrinter netPOSPrinter = new NetPOSPrinter(); 8 //netPOSPrinter.PrintPic(bitmap); 9 10 #e

c# 调用zebra打印指令 打印到USB端口

c# 调用zebra打印机指令打印条码,如果直接打印到lpt1端口的打印机,通过copy指令没有问题, 但如果ZEBRA打印机是通过USB连接,打印机端口为usb001,则程序不能直接拷贝到usb001端口. 必须先共享本机的usb端口打印机,再将共享后的打印机名连接为LPT端口打印机,则可以成功打印. from: http://answers.microsoft.com/en-us/windows/forum/windows_7-hardware/how-do-i-print-a-file-t

指令打印程序(通过Socket)

1.对应的IP 2.将打印的文本文件 1 import java.io.ByteArrayOutputStream; 2 import java.io.File; 3 import java.io.FileInputStream; 4 import java.io.IOException; 5 import java.io.InputStream; 6 import java.io.OutputStream; 7 import java.net.InetSocketAddress; 8 impo

C#直接发送打印机命令到打印机及ZPL常用打印命令 - 条码打印机

using System; using System.Collections.Generic; using System.Text; using System.Runtime.InteropServices; namespace BarCodeLibrary { public class ZebraGesigner { [StructLayout(LayoutKind.Sequential)] private struct OVERLAPPED { int Internal; int Inter

C#调用斑马打印机打印条码标签(支持COM、LPT、USB、TCP连接方式和ZPL、EPL、CPCL指令)

在批量打印商品标签时一般都要加上条码或图片,而这类应用大多是使用斑马打印机,所以我也遇到了怎么打印的问题. 一种办法是用标签设计软件做好模板,在标签设计软件中打印,这种办法不用写代码,但对我来说觉得不能接受,所以尝试代码解决问题. 网上搜索一番,找不到什么资料,基本都是说发送ZPL.EPL指令到打印机,而且还是COM/LPT口连接打印机.后来研究.net的打印类库,发现是用绘图方式打印至打印机的,也叫GDI打印,于是思路有了点突破,那我可以用报表工具画好标签,运行报表时,把结果输出位图,再发送至

C# 标签(条码)的打印与设计(一)

相信目前稍有规模的公司已进入或正在进入信息化之中,尤其在制造企业中,少不了一个条码的打印功能,而这类应用大多是使用斑马打印机,所以就会遇到了怎么打印的问题了.本人也已经从事ERP,MES等系统多年,也有去了解过一些公司的做法.知道条码的打印的一些做法,下面我们来谈一谈,如有错误之处,请大家不吝指出. 1.一些规模小的企业是用标签设计软件做好模板,在标签设计软件中打印,这种办法不用写代码,但对大多数公司来说并不适合,因为企业的数据动态的比较多,如果纯手工修改打印肯定不能接受,于是唯一的出路只能是代

C#打印条码与ZPL

C#打印条码与ZPL 其实两年前我做过此类东西, 但是当时既没做笔记 , 后来又找不着代码了, 于是乎, 上个月又要做条码打印时, 整个地又重来了一遍.在网上查资料时, 发现好几款控件, 下载下来一看, 体积之大远超我想像, 用法也一点都不简单, 很不满, 其实ZPL语言相当简单, 与其向项目中引入这么一个不知道怎么写的控件, 还不如自己写几行ZPL代码. ZPL(Zebra Programming Language) 是斑马公司(做条码打印机的公司)自己设计的语言, 由于斑马打印机是如此普遍,

C# ZPL II 命令打印标签

public class BarPrinter { public static byte[] ZPLPrinter(string p_title = "", string p_specs = "", string p_date = "", string p_code = "") { try { #region ZPL II 打印指令 string title = p_title, specs = p_specs, date =

斑马打印机客户端GET和POST,以及后端两种打印方式。

背景环境:打印机安装在客户端外网.当用户登录时,通过ajax取服务器数据,返回打印机命令,然后客户端通过JS发送给斑马打印机. 1.使用Get方式打印 1.1 前端页面js代码 jQuery(function () { $("#btnRePrint").click(function () { //var cartonId = "450002241530221"; var cartonId = ""; if ($("input[name=