如何使用斑马指令^BC指令打印各种code128条形码

君,已阅读到文档的结尾了呢~~
Code128码打印---ZPL语言
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
Code128码打印---ZPL语言
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口当前位置: >>
Code128码打印---ZPL语言
使用斑马打印机专门的打印命令 ZPL 语言进行 VIN 码打印1. 斑马打印机驱动的设置(1)使用的打印纸大概为------6.5cm*1.3cm (2)设置 Paper Size 的大小为 6.5cm*1.3cm-----使用的是用户自定义大小(3)设置打印的浓度 Printer Darkness 为 10(默认为 10)---可使用打印命令^MD16 设置打 印浓度(4)设置 Printer Actions 设置如下所示,具体作用不是很清楚 2.ZPL 命令简单使用(1) ^XA 和^XZ 是开始和结束标记(2) ^MD30 设置色带颜色的深度 取值范围从-30到30,30为最深颜色深度
(3) ^LH设置条码纸的边距(4) ^FO设置条码左上角的位置 0,0 代表完全不留边距 (5) ^ACN 设置字体. ^ACN 是设置字体的. 因为在条码下方会显示该条码的内容, 所以这里要设一下字体. 这个 字体跟条码无关. ^Afo,h,w (6)^BY 是设置条码样式^BY命令的格式: 改变条码默认参数^Byw,r,h w r 效) h 条码高度 开机初始化值:10点 可接受的数值:1点到标签高度 模块(窄条)宽 宽条与窄条的比例 开机初始化值:2点 开机初始化值: 3.0 可接受的数值:1-10点可接受的数值: 2.0到3.0, 0.1的增量 (对固定比例的条码无效) (7)^BC 是打印 code128 的指令 (8)^FD 设置要打印的内容, ^FS 表示换行. (9)^XG 命令用于调用一个或多个要进行打印的图形图像 (10)~DGd:o.x,t,w,data~DG 命令用于下载以 ASCII 十六进制表示的图形图像 (11)^FWr,z用于为所有具有旋转方向的命令字段设置默认方向(12)^TBa,b,c 用于打印具有定义的宽度和高度的文本块 (13)^FT 命令用于设置字段位置 (14)^FN 命令用于对数据字段进行编号2. VIN(17 位)条形码打印,中文打印---使用 ZPL 语言即命令来实现 Zebra 打印机打印条 形码 (1)使用 ZPL 语言实现打印,下面是实现函数 ZebraPrint import java.io.F import java.io.FileInputS import java.io.UnsupportedEncodingE import javax.print.D import javax.print.DocF import javax.print.DocPrintJ import javax.print.PrintE import javax.print.PrintS import javax.print.PrintServiceL import javax.print.SimpleD public class ZebraPrint { byte[] String s_prt = &^XA,^MD16^FWN,2&, s_prt_buffer=&&; //^XA 打印开始标志 ^MD 打印浓度为 30(-30~30) ^ABN,30,30 设置字体大小 // 长,宽 //测试 public static void main(String[] args) { try { ZebraPrint a = new ZebraPrint(); a.setCommand(&LNBMDLAA8CU000245&); printCN(&发动机名称:QWFWEQFEFQFSFA&, 100, 150,20,20,1); printCN(&发动机所属订单号:ASDFDSSAFADSF&, 100, 180,20,20,1); String str = a.getCommand(); System.out.println(str); a.print(str ); } catch (Exception e) { e.printStackTrace(); } } public ZebraPrint() throws Exception { //加载 24×24 点阵字体库 //以流的形式下载文件 , ts24.lib 是指要下载文件的路径 File file = new File(System.getProperty(&user.dir&)+&\\src\\resources\\ts24.lib&); FileInputStream fis = new FileInputStream(file); //创建一个刚刚好的缓冲区 //fis.available()获取关联的文件的字节数,文件体积不是很大可以这样操作 dotfont = new byte[fis.available()]; fis.read(dotfont); fis.close(); } public void setCommand(String barcode) { printBarcode(barcode, 100, 40); //打印之后能够正确扫描 } public void setCommand(String barcode,int x, int y,String fontType,int fontX,int fontY,int thinBarcode,int times,int height) { printBarcode(barcode,x,y,fontType,fontX,fontY,thinBarcode,times,height); 能够正确扫描 } public String getCommand() { return s_prt + s_prt_buffer+&^XZ&; //^XZ 打印结束 } public void print(String str) throws PrintException { PrintService psZebra = PrintServiceLookup.lookupDefaultPrintService(); if (psZebra == null) { System.out.println(&没有发现条码打印机.&); } DocPrintJob job = psZebra.createPrintJob(); byte[] by = str.getBytes(); DocFlavor flavor = DocFlavor.BYTE_ARRAY.AUTOSENSE; Doc doc = new SimpleDoc(by, flavor, null); job.print(doc, null); }//打印之后/** * 打印条形码 * @param barcode 字符串 * @param xx x 坐标 * @param yy y 坐标 * @param fontX 字体高度 单位:dots * @param fontY 字体宽度 * @param thinBarcode 窄条宽度 单位:dots 可接受的数值:1-10 点 * @param times 宽条与窄条的比例 可接受的数值:2 到 3.0,0.1 的增量(对 固定比例的条码无效) * @param height 高度 可接受的数值:1点到标签高度 * * 命令: * ^FDa 参数 a 代表要打印的数据 ^FO 设置条码位置 ^FD 设置要打印的内容, ^FS 表示换行 ^BY 命令的格式: 改变条码默认参数 ^Byw,r,h w 模块(窄条)宽 开机初始化值:2 点可接受的数值:1-10 点 r 宽条与窄条的比例 开机初始化值:3.0 可接受的数值:2.0 到 3.0,0.1 的增量 (对固定比例的条码无效) h 条码高度 开机初始化值:10 点 可接受的数值:1 点到标签高度 */ protected void printBarcode(String barcode,int x, int y,String fontType,int fontX,int fontY,int thinBarcode,int times,int height) { System.out.println(barcode); s_prt_buffer += &^FO&+x+&,&+y+&^A&+fontType+&N,&+fontX+&,&+fontY +&^BY&+thinBarcode+&,&+times+&,&+height+&^BCN,,Y,N^FD& + barcode + &^FS\n&; } protected void printBarcode(String barcode,int x, int y) { System.out.println(barcode); // s_prt_buffer += &^BY3^FS^FO&+x+&,&+y+&^BEN,&+h+&^FD& + barcode + &\n&; s_prt_buffer += &^FO&+x+&,&+y+&^A5N,22,22^BY2,3,100^BCN,,Y,N,N^FD& + barcode + &^FS\n&;//可以打印出条码和注释等宽 } /** * 打印英文字符,数字 * @param str * @param x 距左顶角沿 X 轴的距离(原点) 单位:dots * @param y 距左顶角沿 Y 轴的距离(原点) 单位:dots * @param h 字体高度 * @param w 字体宽度 */ protected void printChar(String str,int x, int y,int h,int w) { System.out.println(str); s_prt_buffer +=&^FO&+x+&,&+y+&^A0,&+h+&,&+w+&^FD&+str+&^FS&; } //字符旋转 90 度 protected void printCharR(String str,int x, int y,int h,int w) { System.out.println(str); s_prt_buffer +=&^FO&+x+&,&+y+&^A0R,&+h+&,&+w+&^FD&+str+&^FS&; } /** * 打印中文字符串 * @param strCN * @param x 距左顶角沿 X 轴的距离(原点) 单位:dots * @param y 距左顶角沿 Y 轴的距离(原点) 单位:dots * @param h 英文字符,数字字体高度 * @param w 英文字符,数字字体宽度 * @param b 图片放大系数接受的值:1 至 10 默认值:1 (在这里即就是中文显示 的大小) * ^XG 调用图象 格式 ^XGd:o.x,mx,my d---已存储图像的源设备 mx = x 轴的放大系数接受的值:1 至 10 默认值:1 my = y 轴的放大系数接受的值:1 至 10 默认值:1 ~DG 命令用于下载以 ASCII 十六进制表示的图形图像 格式 ~DGd:o.x,t,w,data d = 存储图像的设备 t = 图形中的总字节数 w = 每行的字节 data = 定义图像的 ASCII 十六进制字符串 一个汉字或符号在字库中的顺序号=94*(区码-1)+(位码-1) 机内码与区位码之间的变换关系:机内码高位字节=区码+160 机内码低位字节=位码+160 一个汉字字模在 24 点阵字库中的起始位置 = 72×[(机内码高字节-176)×94 + (机内码低字节-161)] 汉字点阵数据存储位置偏移量 offset =(94×(区码-1)+(位码-1) )×72 */ public void printCN(String strCN, int x, int y,int h,int w,int b) { System.out.println(strCN); byte[] ch = str2bytes(strCN); for (int off = 0; off & ch.) { if (((int) ch[off] & 0x00ff) &= 0xA0) {//ASCII 码值&0xa0&表示汉字的开始 int qcode = ch[off] & 0 int wcode = ch[off + 1] & 0 s_prt_buffer = s_prt_buffer + String.format(&^FO%d,%d^XGX,%d,%d^FS\n&, x, y, qcode, wcode,b,b); s_prt += String.format(&~DGX,,\n&, qcode, wcode); qcode = (qcode + 128 - 32) & 0x00//区码:或 qcode = (qcode - 128 32) & 0x00(一般这样用)可达到减去 0xA0 的效果 wcode = (wcode + 128 - 32) & 0x00//位码: 或 wcode = (wcode - 128 32) & 0x00(一般这样用)可达到减去 0xA0 的效果 int offset = ((int) qcode - 16) * 94 * 72 + ((int) wcode - 1) * 72;//偏移量是指字模首字节距离文件头的相对位置 for (int j = 0; j & 72; j += 3) { qcode = (int) dotfont[j + offset] & 0x00 wcode = (int) dotfont[j + offset + 1] & 0x00 wcode,qcode1); //%02Xint qcode1 = (int) dotfont[j + offset + 2] & 0x00 s_prt += String.format(&%02X%02X%02X\n&, --- 以十六进制显示,不足两位则补零qcode,} x = x + 25*b; off = off + 2;//中文包含两个字节 } else if (((int) ch[off] & 0x00FF) & 0xA0) { printChar(String.format(&%c&,ch[off]), x, y, h, w); x = x + 15; off++;//英文包含一个字节 } } } byte[] str2bytes(String s) { if (null == s || &&.equals(s)) { } byte[] abytes = try { abytes = s.getBytes(&gb2312&); } catch (UnsupportedEncodingException ex) { } }} (2)上面的 s24.lib 包(24*24 点阵字体库)需要添加-----放在项目下(需要注意路径问题) (3)下面的 ZPL 函数能够在 6.5*1.3cm 的纸张下打印出条形码长度与注释长度等宽 条形码和注释等宽:VIN 码长度为17位 ^XA,^MD16^FO100,40^A5N,30,33^BY4,3,150^BCN,,Y,N^FDLNBMDLAA1CR0238 37 ^XZ (4)不设置注释的字体和大小,可以居中打印出来,下面是具体的打印命令: ^XA,^MD16^FWN,2^FO100,40^BY2,3,100^BCN,,Y,N,N^FDLNBMDLAA8CU000245 ^FS ^XZSue remarks:在调整条形码和注释等宽的时候,当字体类型和大小很难调整,达到要求 时,可以考虑调整宽条与窄条的比例。对于打印中文,需要注意: (1)计算区位码 整个字库分94个区,每个区可存放94个汉字或字符,各汉字或符号所在的区即为区码,在区 中的顺序号为位码,因此,通过区码和位码便可唯一的确定一个汉字或符号,计算公式为: 一个汉字或符号在字库中的顺序号=94*(区码-1)+(位码-1) (1) 如果直接利用汉字的区位码作为编码存储,就会无法区分是汉字还是西文字符,为此,对区 码作统一的变换后作为汉字的存储代码,即机内码。机内码与区位码之间的变换关系如下: 机内码高位字节=区码+160 机内码低位字节=位码+160(2) 对于16点阵字库,每个汉字字模使用32 B(16bit×16bit) ,再由式(1)和式(2)可知, 一个汉字字模在16点阵字库中的起始位置可由式(3)求得: 32×[(机内码高字节-161)×94 + (机内码低字节-161)] (3) 由于汉字库前15个区主要用于存放各种非汉字符号, 有些汉字系统为了不同的需要进行 了裁减,对此就特别注意,应根据所选字库对式(3)进行适当修改。同样,一个汉字字模 在24点阵字库中的起始位置应为: 72×[(机内码高字节-176)×94 + (机内码低字节-161)] (4) (2)计算汉字点阵数据存储位置偏移量 偏移量是指字模首字节距离文件头的相对位置。 其计算原理是: 求出被检索汉字之前的汉字 个数,再乘每个汉字所占的字节数。1个 n×n 点阵字符所占字节数等于 n×n÷8。如16×16 点阵占32 B,其便宜量 offset 计算式为: offset =(94×(区码-1)+(位码-1) )×32 (5) (3)移动文件指针读出点阵字模数据 打开点阵字库文件,将文件指针从文件头向后移动 offset 个字节,然后使用文件读取函 数读出字模,如使用 Windows API 函数。点阵字库存在分辨率低和不能放大两个致命的缺 点。其中,分辨率低导致不能反映字体形状细节,也就不能反映丰富多彩的字体,可以通过 提高位图点数提高分辨率。相较于其他字库,点阵字模原理简单使用非常容易,因此,载其 在大型显示屏等户外电子装置显示汉字时得到广泛应用。 (4)关于如何计算汉字库中寻址某个汉字的点阵数据 接下来的问题就是如何在汉字库中寻址某个汉字的点阵数据了.要解决这个问题,首先需要 了解汉字在计算机中是如何表示的.在计算机中英文可以使用 ASCII 码来表示,而汉字使用 的是扩展 ASCII 码,并且使用两个扩展 ASCII 码来表示一个汉字.一个 ASCII 码使用一个 字节表示,所谓扩展 ASCII 码,也就是 ASCII 码的最高位是1的 ASCII 码,简单的说就是码 值大于等于 128 的 ASCII 码.一个汉字由两个扩展 ASCII 码组成,第一个扩展 ASCII 码 用来存放区码,第二个扩展 ASCII 码用来存放位码.在 GB2312-80 标准中,将所有的汉字分 为 94 个区 , 每个区有 94 个位可以存放 94 个汉字 , 形成了人们常说的区位码 , 这样总共就有 94*94=8836 个汉字.在点阵字库中,汉字点阵数据就是按照这个区位的顺序来存放的 ,也就 是最先存放的是第一个区的汉字点阵数据,在每一个区中有是按照位的顺序来存放 的.在汉 字的内码中,汉字区位码的存放实在扩展 ASCII 基础上存放的,并且将区码和位码都加上了 32,然后存放在两个扩展 ASCII 码中.具体的说就是: 第一个扩展 ASCII 码 = 128+32 + 汉字区码 第二个扩展 ASCII 吗 = 128+32 + 汉字位码 如果用 char hz[2]来表示一个汉字,那么我可以计算出这个汉字的区位码为: 区码 = hz[0] - 128 - 32 = hz[0] - 160 位码 = hz[1] - 128 - 32 = hz[1] - 160. 这样,我们可以根据区位码在文件中进行殉职了,寻址公式如下: 汉字点阵数据在字库文件中的偏移 = ((区码-1) * 94 + 位码) * 一个点阵字模占用的 字节数 使用上面的程序打印中文“中华人民共和国” ,形成的 ZPL 命令如下: ^XA~DG,, C00 800 818 1FFFFC 818 818 818 1FFFF8 810 800 800 800 000 ~DG0000BBAA,, C700 620 6E0 FE04 604 0307FE 0303FC 021000 001C00 00180C 7FFFFE 800 800 800 001000 ~DG0000C8CB,, 000 001C00 800 800 400 400 C200 00C300 180 060 03C 1 000 ~DG,, 060 0FFFF0 0C0 0C0 0FFFE0 0C0 0C8 0FFFFC 0CC00 0C0C00 0C4 0C4 0F00E4 0E003C 1C001E 080004 ~DG,, C380 300 318 3FFFFC 300 300 308 01831C 3FFFFE 400 00E300 0E0 038 000 ~DG0000BACD,, E000 07F000 3F040C 0307FE 0C 03360C 7FFE0C 0C 0C 0B360C 1B160C 1C 2307FC 4C 000 000 ~DG0000B9FA,, 018 3FFFFC 018 FFD8 018 318 33FF98 618 218 FFD8 018 300018 3FFFF8 010 ^FO10,60^XG,10,10^FS ^FO260,60^XG0000BBAA,10,10^FS ^FO510,60^XG0000C8CB,10,10^FS ^FO760,60^XG,10,10^FS ^FO1010,60^XG,10,10^FS ^FO1260,60^XG0000BACD,10,10^FS ^FO1510,60^XG0000B9FA,10,10^FS ^XZ修改时间: 由于新的需求,打印多行时,打印的长度(即 y 轴方向)只能打出二百多 dots,尝试过分两 条命令打印,但是条码和文字之间的间距过大,不可取。 查看 ZPL 的 API,发现有一个设置标签长度的命令,命令格式:^LLy 直接使用该命令,没有作用,后来无意中发现,该命令只有在打印机模式为连续模式的情 况下才有用。【丰城市工业级斑马105SL不干胶标签条码打印机】价格_厂家_图片 -Hc360慧聪网
您是不是在找:
买家还在看:
商品数量:
宁夏回族自治区&银川市
手机访问店铺
丰城市工业级斑马105SL不干胶标签条码打印机
&7400 - &7500
买家正在看
相关商品推荐
&550.00/盒
&20.00/个
&432.00/扇
&60.00/件
&7.00/个
商家等级:
所在地区:
宁夏回族自治区 银川市
认证信息:
建议零售价:
同参数产品
加工定制:
同参数产品
同参数产品
墨轮尺寸:
同参数产品
印字速度:
同参数产品
同参数产品
外形尺寸:
同参数产品
适用对象尺寸:
同参数产品
同参数产品
同参数产品
售后服务:
同参数产品
同参数产品
同参数产品
正在加载中........
慧聪网厂家上海荆禹包装材料有限公司为您提供丰城市工业级斑马105SL不干胶标签条码打印机的详细产品价格、产品图片等产品介绍信息,您可以直接联系厂家获取丰城市工业级斑马105SL不干胶标签条码打印机的具体资料,联系时请说明是在慧聪网看到的。
热门商品推荐
我的浏览记录
条码设备相关资源
条码设备热门产品搜索
条码设备相关热门专题
您在慧聪网上采购商品属于商业贸易行为。以上所展示的信息由卖家自行提供,内容的真实性、准确性和合法性由发布卖家负责,请意识到互联网交易中的风险是客观存在的。推荐使用慧付宝资金保障服务,保障您的交易安全!
按字母分类 :
让慧聪网撮合专家为您解决采购难题
您采购的产品:
请输入采购产品
您的手机号码:
请输入手机号码
*采购产品:
请输入采购产品
*采购数量/单位:
请输入采购数量
请选择单位
*采购截止日期:
请输入正确的手机号码
请输入验证码
*短信验证码:
<input id="valid_Code1" maxlength="6" placeholder="请输入验证码" name="VALIDCODE" class="codeInput" onkeyup="this.value=this.value.replace(/\D/g,'')" onkeypress="if(event.keyCode
57) event.returnValue =" type="text">
免费获取验证码
为了安全,请输入验证码,我们将优先处理您的需求!
请输入验证码
发送成功!
慧聪已收到您的需求,我们会尽快通知卖家联系您,同时会派出采购专员1对1为您提供服务,请您耐心等待!
联系人:尹威&
公司名称:上海荆禹包装材料有限公司
请输入正确的手机号码
请输入验证码
*短信验证码:
免费获取验证码
为了安全,请输入验证码,我们将优先处理您的需求!
请输入验证码
每一份需求都会在24小时内得到行业多家优质供应商报价。
每一份需求的报价供应商工商信用资质都会经过专业人员检验,交易安全有保障。
免费咨询行业专家
免费咨询行业专家
服务主题:
筛选发货地
验证供应商真伪
提供其他优质供应商
采购数量:
用途描述:
成功加入采购单!
当前采购单共3种货品
成功加入采购单!
当前采购单共3种货品
不能购买自己发布的产品!
选中货品中含失效货品,无法完成下单,可能是:
1.货品库存不足
2.货品已过期,或被卖家删除
3.货品不支持在线交易
卖家暂时不在线,留下联系方式,卖家会主动联系您
*我要采购:
我的姓名:
留言内容:上海京威电子科技有限公司 | 按需式条码、可变信息标签打印方案及条码扫描应用系统 - “您问我答”BBS网络在线解答
姓名:Carmen
主题:Code 128 A 指令&
留言内容:
按照指示,在^FD后加上&9,扫描打印出来条码的值跟传入的值不一样,传入的值是:9S1,使用扫描枪扫描的值是8O&&(8O后面有两空格),请问是否还有一个换算呢?
^FO10,25^BY2,2^BCN,20,N,N^FD&9& + strSN + &^FS
京威公司答复:
Code128有一个字符集表,需要把ASCII字符根据Code128字符集表得到Code128值。写程序时,根据Code 128A的字符集建立一个字符串数组,如{& &,&!&,........,&0&,&1&,.....,&A&,&B&,.....&S&,&T&....}
根据Code128A的字符集表,如字符0的字符串index是16,1是17,S是51,根据字符在字符串中的位置得到index值,这个值就是转换的Code128A字符集值,最后得到的^FD&9后面的数据就是161617^FS。
<font color="#17-9-2 8:20:02
姓名:Carmen
主题:Code 128 A 指令&
留言内容:
请问如下指令怎么把码型修改为code 128 A?
^FO10,25^BY2,2^BCN,20,N,N^FD& + strSN + &^FS
京威公司答复:
^FO10,25^BY2,2^BCN,20,N,N^FD&9& + strSN + &^FS
也就是^FD后面更一个Code128 A的起始符&9。
<font color="#17-9-1 16:19:34
主题:是否可以获取打印机碳带,打印纸的情况&
留言内容:
我们买了斑马打印机 , 目前在做项目的时候遇到这个情况:连续大批量打印的时候考虑到缺纸,缺碳带,于是考虑使用
~HS 命令 来返回打印机状态,但是始终没有反应,请问是怎么个情况&&其他 命令 如 ~HA&&~HZ&&^FO&&等等 都是可以的
京威公司答复:
走网络,Socket方式来处理;
走并口,无法返回;
走串口,串口接受;
走USB,自己编写USB双向通讯程序;
另外没见过~HA、~HZ指令,^FO是坐标定位不能返回数据给主机系统。
<font color="#17-8-4 14:08:38
姓名:周维嘉
主题:不同zpl210打印机,打印相同命令,打印结果不同&
留言内容:
不同斑马打印机zpl210(200dpi和300dpi)
打印机相同命令,打印结果不同
^XA^SEE:GB18030.DAT^FS
^CW1,E:SIMSUN.FNT^FS
^LH30,0^PR2,2,2^MD12^COY,300,1^CI26
^FO460,35^A1R,35,35^FD上海京威电子科技有限公司^FS
^FO400,35^A1R,35,35^FD样品名称:Metribuzin 98% TG^FS
^FO340,35^A1R,35,35^FD样品编码:PI002032^FS
^FO280,35^A1R,35,35^FD供 应 商:江苏化工^FS
^FO220,35^A1R,35,35^FD批&&&&号:^FS
^FO160,35^A1R,35,35^FD入库日期:^FS
^FO100,35^A1R,35,35^FD库&&&&位:(一)号架1层 1-13^FS
^FO40,35^A1R,35,35^FD危险分类:无^FS
^FO40,700^BY1.5,1.5,20^BCN,80,Y,Y,N,N^FDSC31728^FS
京威公司答复:
<font color="#0dpi和300dpi概念是打印机打印头分辨率,200dpi是每英寸200个点,300dpi是每英寸300个点,也就是这个“点”的大小是不同的,200dpi的点大,300dpi的点小;
Zebra打印机ZPL指令中的参数是点的大小来计算,在“净”打印机也就是没有被设置过的200/300打印机对于同一个ZPL指令,打印出来的样式是一样的,但打印出来的标签上的文字及条码图案的大小是不一样的。
<font color="#17-5-25 16:07:33
姓名:Micky
主题:Arial Narrow字体打印中文&
留言内容:
我使用指令打印一串中文,字体使用的是Arial Narrow,是可以打印出来的,字体也是缩小了,但是其他人认为这个字体不可以打印中文,说我这个指令有误,还请帮忙分析一下这个指令使用这个字体是否正确。还有是否中文不能使用Arial Narrow?但是为什么能打出来效果还是挺好的呢?指令如下:
BarCode.BarCode.GETFONTHEX(strChanDi, &Arial Narrow&, &temp1&, 0, 19, 8, 1, 0, sb);
StrBoard = StrBoard + sb.ToString() + &^FO223,31^XGtemp1,1,1^FS&; //产地/a地:中国/中
京威公司答复:
这个不是你程序及方法的问题,你使用的是Arial Narrow这个Windows TrueType字体,虽然这个字体不是中文字体,但在Windows环境下选择这个字体是能输出中文的,具体WHY能输出中文请联系Microsoft。
<font color="#17-5-3 13:22:52
姓名:H-STAR
主题:追问--如下脚本打印不出,请帮忙分析一下,谢谢&
留言内容:
如下脚本打印不出,请帮忙分析一下,谢谢
^FO250,220^BQN,2,4^FDLB,2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A2YB_0D_0A^FS
^PQ1,0,1,Y
京威公司答复:
参考第190条,请认真阅读,第3/4描述的非常清晰了。
<font color="#17-4-18 9:17:52
姓名:H-STAR
主题:追问---关于zpl脚本中QR码制打印不出的问题&
留言内容:
那么二维码包含超过50个“2YB_0D_0A”的时候为什么打印不出来的?算起来(25+2)*51=1377,做了一些测试,字符串中有了字母,容量会比纯数字少很多
京威公司答复:
QR Code有1-40个版本,每个版本选择不同的纠错级别不同的编码方式有着不同的数据包容量,根据QRCode的技术标准然后回到ZPLII指令中修改ZPLII指令来符合实际数据需求,有关QRCode的技术标准,请。
如上字符串数据,60个数据,Zebra打印机L纠错Byte模式打印测试及扫描没有问题。
<font color="#17-4-17 11:27:01
姓名:H-STAR
主题:关于zpl脚本中QR码制打印不出的问题&
留言内容:
zpl脚本中QR码制中传入超过50个长度25位字符串、并用_0D_0A回车换行,就打印不出来,把字符串长度减少就可以超过50个字符串,是否_0D_0A占用的字节数不止6?
京威公司答复:
<font color="#、当仅用数字时,QRCode能包含7089个数字字符信息;
2、_0D_0A回车换行,Zebra打印机处理时是2个字节而不是6个字符;
3、50个长度25位字符串,加2个回车换行,50x(25+2)=1350个字符;
4、ZPLII指令中QRCode指令使用Byte模式来处理,如^FDLM,BABCDE_0D_0AABCDE_0D_0A......ABCDE_0D_0A^FS
<font color="#17-4-17 9:01:38
姓名:fr46456ygdcs
主题:EsXaSBqQ&
留言内容:
cr346467rhsvczxvmkaskoADKM FD453456YGFFFFdd bvu67i4yhgfdh
京威公司答复:
Санкт-Петербург, друзья России, пожалуйста, не скандалить Oh!
<font color="#17-3-30 21:53:34
姓名:小树
主题:关于zebra打印机的接入&
留言内容:
首先感谢您对我的问题的解答。
我现在想用C++接入GT820打印机,但在SetupDi..的API时总是没有调通,然而我用了你的条码打印机调试助手,是可以进行数据发送和接收的。
所以想再次请教下,这个软件您是如何实现的,大概需要哪些流程呢?
如果可以的话,麻烦为我解下疑惑,甚至可以的话,麻烦发份demo程序到我的邮箱中。
另外我们公司是一家安防行业的上市公司,对一些打印机的需求,以后应该是可以跟贵司合作的。
京威公司答复:
我们没有过条码打印机调试助手,Zebra官方也没有过这个东西。
Zebra ZPLII指令是简单的ASCII字符指令,C++中,如走串口Write出去ZPLII指令,如走USB RAW模式输出ZPLII字符串,具体的请问问度娘。
<font color="#17-3-22 9:43:38
姓名:小树
主题:打印二维码+释义的问题-追问&
留言内容:
感谢您为我解答疑惑,另外有个小小的要求
1. 能否请您帮忙写几行命令呢?就是实现二维码和注释一起打印的命令。
2. 另外我看资料,^PX可以打印注释,但尝试了后没反应,请问这个命令该如何使用呢?
京威公司答复:
如下指令(QR Code数据是):
^FXZPLII LABEL FORMAL START^FS
^FXLABEL WIDTH WITH 832 DOTS 104mm^FS
^FT200,250^BQN,2,8^FDLA,^FS
^FXZPLII ^BQ is QR Code with ^FS
^FT200,300^A0N,30,30^FD^FS
^FXA String
with ^A0 Font down QR Code^FS
^PQ1,0,1,Y
^FXPRINT QTY 1 LABEL^FS
^FXZPLII LABEL FORMAL END^FS
ZPLII没有^PX指令,只有^FX指令,^FX是对ZPL语言注释的指令,如C#编程中//对程序代码的解释一样,这个^FX并不是你理解的条码下面的人工识读部分内容,只是对ZPLII语言的注释,在ZPLII格式中做注释,这个注释并不在标签上打印出来。
<font color="#17-3-20 10:06:01
姓名:小树
主题:打印二维码+释义的问题&
留言内容:
1. 你好,我用GT-820想用ZPL命令打印二维码,要求是二维码下面加其释义,跟条形码一样。请问可以实现吗?
2. 如果可以,请问该如何编写命令呢?
3. 如果不可以,还有其他方法可以实现吗?比如直接绘制好图片,然后传进去。需要用到什么命令?
京威公司答复:
条形码分为2部分:条码的部分为机器识读部分,下面的文字是人工识读部分。二维码没有人工识读部分的说法,但你可以人为地加上这个人工识读部分,ZPL指令中有^A字符打印指令,指令中的数据和二维码的数据一样就可以实现你的要求了。
<font color="#17-3-17 16:17:27
姓名:小苗
主题:使用Zebra Tool将TIF格式转换成GRF&
留言内容:
现在要打印图片,看到要使用GRF格式,我看资料上要使用Zebra tool转换成GRF,我转换了,却在C盘路径下面没有发现文件,不知道怎么操作,怎么转换,请大神指教小弟
京威公司答复:
Ztool软件中的Option/Directories/Destination中定义输出的目录,假如Graphic符合要求,会在定义的输出目录中出现一个.GRF文件。
<font color="#17-2-22 11:49:45
主题:ZPL列印la序&
留言内容:
ZPLII打印QR Code,使用^BQ指令,如:
^FT0,70^BQN,3,3
^FDMA,B0056^FS
^PQ5,0,1,Y
列印的序B, 59, 60,
若要倒著印(即B, 57, 56)的
有其它ZPL支援?!
京威公司答复:
没有此功能ZPL指令,因为有B非数字字符,建议做循环,-1步长。
<font color="#17-2-15 13:54:29
姓名:Micky
主题:ZPL 打印日文字体出现乱码&
留言内容:
现在想要打印一串日文的字符至贴纸上面,但是打印出来的是乱码。贴代码如下,请帮忙看一下哪里需要修改的还是我需要设置什么东西呢?
BarCode.BarCode.GETFONTHEX(strDescription, &KozGoPro-Regular&, &temp2&, 0, 33, 0, 0, 0, sb1);
StrBoard = StrBoard + sb1.ToString() + &^FO100,130^XGtemp2,1,1^FS&;
京威公司答复:
早期的GETFONTHEX不知是否能处理日文字体,GETFONTHEX是Windows TrueType字体转换成点阵图像数据模式,但不一定能处理日文。现在的Zebra打印机是采用unicode方式来处理日文,在打印机中安装一个unicode字库的方式来解决全球字符打印问题。
KozGoPro-Regular不知是啥字体,但你可以尝试Win7下的Arial Unicode MS常规这个字体,这个字体是Unicode全球字符字体,可以处理打印日文。
<font color="#17-2-14 10:49:47
姓名:邓先生
主题:GK888t&
留言内容:
我用TK888t打印MAC条码,出来的效果感觉不是很满意,和TP-LINK等产品背后的条码比较,别人的线很细而且很清晰。这是打印命令:
^BC,,N,N,N,A
请问这是因为这款打印机的分辨率不够好吗?
还是因为打印参数的问题?
还是需要选择某些字体?
京威公司答复:
GK888T打印机分辨率是203dpi,其打印发热器件点比较“粗”,这样打印出来的小字符会感觉笔画锯齿状,要求打印出来的字符线条边缘清晰请选择高分辨率打印机如300dpi或600dpi。
<font color="#17-2-10 11:21:25
姓名:张先生
主题:条码注释&
留言内容:
^FO20,100^B3^FD^FS
打印出来的效果是:
上面是条形码
但我如果想上面条形码效果不变,下面的注释变为:
请问该如何呢?
京威公司答复:
条码分为二部分,条码是机器识读部分,下面的字符是人工识读部分。
^B3指令是Code39码,指令参数详细为^B3o,e,h,f,g,其中的f是是否需要人工识读部分(Y/N)。
你的要求可以拆分,条码无下面的人工识读部分,然后再添加一个2个字符组合:&MAC:& +条码数据字符。
<font color="#17-2-9 18:02:19
姓名:小草
主题:打印时如何扩大或缩小图片格式&
留言内容:
如题,有一GRF格式的图片,但是在打印时,如何设置图片的大小呢?
京威公司答复:
GRF定义了图片的点阵信息,也就是原始图片的打印大小,在^XG指令中只能X或Y方向成倍放大,最大倍数为10,而不能随意放大。
<font color="#17-1-6 17:16:04
姓名:小草
主题:如何打印图片&
留言内容:
已知一个GRF格式的图片,如何通过ZPL语言和斑马打印机进行打印呢?急求 C# 和 ZPL代码。
京威公司答复:
GRF格式中的数据是ASCII字符信息,在C#中读取这个文件然后使用字符串操作方式来传送给打印机,GRF数据中有^DG指令,然后再用^XG指令调用即可。
<font color="#16-12-19 19:07:10
姓名:Frank
主题:GK888t 重置后中文字库丢失&
留言内容:
GK888t 打印机在重置后会丢失板载的中文字库,SIMSUN.FNT和CHS.FNT都没有了,哪里可以找到这几个字库重新下载呢?是否可以从别的GK888t机器上复制过来呢?
京威公司答复:
请联系你的GK888T打印机供应商,打印机板载的字库文件只有厂家有,也无法充另一台机器上复制过去。
<font color="#16-10-1 17:38:58
姓名:李新寅
主题:如何下载字体到打印机上?&
留言内容:
如果将字体下载到GK888t机器上面?
已经可以用SIMSUN来打印中文,想要换黑体来打印,但不知该如何操作。
用Zebra Designer Fonts and Graphic Downloader做了张内存卡,然后test print中文依然是乱码。下载字体后,执行^WD*:*.*到机器打印出来的列表里依然没有看到有字体上传。
京威公司答复:
Zebra GK888T内置SIMSUN点阵中文字库,打印机主板没有多余的空间来存储其他字体。
在某些“大”容量(64M主板闪存)配置机型中,有足够的存储空间来下载存放客户需要的字体,如你需要的黑体,通过Zebra Designer Fonts and Graphic Downloader等专业软件转换黑体字库下载到打印机即可,指令控制方式和SIMSUN方式一样处理。
<font color="#16-8-31 17:36:52
姓名:梁生
主题:二维码手机扫描不出来&
留言内容:
我在1*3cm的标签上打印小的二维码,打印出来后手机扫描不了!请问多大的二维码标签比较适合打印出来后可以扫描出数据?语句如下:
ptrStr:='^BQN,2,4^FDHM,A'+'^FD3^FS';&
京威公司答复:
语句没错,打印出来的QR Code二维码,专业设备都能扫描,203dpi和300dpi打印机打印出来的手机肯定能扫描,600dpi的机器可能由于二维码太小手机无法扫描。
<font color="#16-8-23 19:10:04
姓名:沈先生
主题:需采购3000T不干胶标签&
留言内容:
在Epson GP-C832标签打印机上用(二边带孔)ZASPER3000T不干胶标签165mm*360mm 每个都要采购!!
<font color="#16-8-8 9:24:57
姓名:huming
主题:安卓手机发送指令不能打印中文&
留言内容:
&&&如下面所示&&打印中文乱码&&英文是可以打印的 是哪里有问题。麻烦你指出下。谢谢!
public String testprint()
com.m.TcpPrinterConnection myconnection = new com.m.TcpPrinterConnection(&10.3.50.68&,6101);
myconnection.open();
byte[] datatosend = &^XA^SEE:GB18030.DAT^CW1,E:SIMSUN.FNT^CI26^FO10,200^A1N,40,40^FD中国杭州ZHONGGUOHANGZHOU^FS^XZ&.getBytes();
myconnection.write(datatosend);
return &Data Sent&;
catch(com.m.ZebraPrinterConnectionException f)
return &BAD Connection&;
京威公司答复:
设置断点在myconnection.write(datatosend);查看datatosend数组值,其中“中国杭州”的byte值,是占用了8个字节还是超出8个字节,假如这“中国杭州”所占用的字节超过8个字节,那你就得定义字符串的Encoding为ASCII才行,否则得更换ZPL指令模式。
<font color="#16-7-14 13:53:40
姓名:老王
主题:zplII QR码说明&
留言内容:
有没有关于ZPLII QR码的打印语句的参数的中文说明?
京威公司答复:
抱歉没有ZPLII QR Code指令的中文说明,您可以参考官方ZPLII指令的英文说明,如果有需要ZPLII QR Code指令方面的帮助,你可写邮件或电话给我们公司。
<font color="#16-7-5 10:23:12
姓名:仇文超
主题:VS2015 C#打印中文出问题&
留言内容:
^PW812^LL440
^SEE:GB18030.DAT^CWZ,E:SIMSUN.FNT^CI26
^FO20,40^AZN,24,24^FD打印中文字符 3mmX3mm^FS
^FO20,90^AZN,24,48^FD打印中文字符 3mmX6mm^FS
^FO20,140^AZN,48,24^FD打印中文字符 6mmX3mm^FS
^FO20,220^AZN,48,48^FD打印中文字符 6mmX6mm^FS
^FO20,300^AZN,24,24^FD下面是条码Code128^FS
^FO20,340^BY2,2^BCN,60,Y,N^FD^FS
打印机 GK888T
用上面的测试代码在工具发送命令里面都是可以正常打印简体中文的,但在VS2015C#用同样的代码测试虽然能打印出中文但总不是输入对应的中文。是不是有什么注意的
京威公司答复:
注意字符的Encoding,System.Text.Encoding.ASCII模式。
<font color="#16-6-2 11:22:44
姓名:苗元方
主题:打印宋体&
留言内容:
我是初学者,请问怎么打印宋体字以及大小(8pt,10pt),怎么调用字体 ,感谢了
京威公司答复:
譬如,Office中Word/EXCEL,选择宋体字体及大小即可。
<font color="#16-5-14 16:46:12
姓名:wdongjia
主题:在25*25的标签上打印20*20的二维码&
留言内容:
在25*25的标签上打印20*20的二维码
京威公司答复:
假如使用的是Zebra打印机,随机光盘中的ZebraDesigner软件,在这个软件中做设置,如选择设置标签大小,二维码类型等,然后测试打印到打印机。
<font color="#16-3-31 16:28:10
主题:打印机truetypezi字体&
留言内容:
请问,我查看下载到打印机内的中文字体仍然是ttf格式,没有生成FNT格式,如何调用truetype字体文件。打印机内置的simsun也是ttf格式
京威公司答复:
Windows的TrueType字体到Zebra打印机需要专用工具转换,Windows的环境下的TTF字体文件和Zebra打印机存储里头的TTF文件是两个完全不等同的文件。
在Zebra打印机存储空间里的字体无论是TTF和FNT,都是采用^CW来定义字体号,然后^A指令来调用,有关中文处理时注意传送给打印机的字符编码属性来确认是否需要中文码表及^CI指令来协调切换。
<font color="#16-3-10 10:57:11
姓名:Micky
主题:&Code 128 Auto&
留言内容:
为什么这样^FO30,50^BY2,2^BCN,48,N,N,,A^FD2369138^FS打印出来的样式还是code 128,而不是code 128 Auto的?盼复,谢谢
京威公司答复:
^BC指令5个逗号后的参数为A时,就是Code128 Auto。
^BCo,h,f,g,e,m
A = Automatic Mode
This analyzes the data sent and automatically
determines the best packing method. The full
ASCII character set can be used in the ^FD
statement ― the printer determines when to shift
subsets. A string of four or more numeric digits
causes an automatic shift to Subset C.
数据“2369138”Auto模式的the best packing method是这样,以Code128C起始编码“236913”然后从Code 128C切换成Code 128A来编码“8”,在当m Modea为A时,打印机把^FD2369138^FS相当处理成^FD&;^FS,其中&;是Code128C开始,个数字数据,然后&7是Code128C切换成Code128A,然后24是Code128A的Code 128的character sets “8”的Value为24.
<font color="#16-2-25 15:49:23
留言总数:<font color=#ff
每页30条 []
上海京威电子科技有限公司
All Right Reserved.& 电 话:021-32.7333 && 传 真:021-

我要回帖

更多关于 vscode web指令 的文章

 

随机推荐