通过JavaScript使用ZPL指令打印标签,实现过程总结

说明:博主使用的打印机型号为:zebra ZD420,使用JavaScript通过浏览器调用打印机的方式进行标签的打印。

下载Browser Print

结合我们使用的打印机型号,去官方下载适用的控件:

下载成功并安装后,运行控件后效果如下图:就可以开始设置打印机配置了
控件界面图
1:若连接成功,会显示当前打印机;
2:调用打印机的浏览器页面的端口号。

下载Browser Print控件 JavaScript 库

官方提供了一个JavaScript库,我们可以通过下载来学习运行逻辑,测试是否与打印机连接成功并发送ZPL指令进行标签打印
标识
若网络情况较差,无法通过官方下载,我提供了网盘提取,提取码:yyli
下载完成,减压后文件目录如下:

文件目录
进入sample文件,运行index.html文件,页面如下:
效果
1:选择需连接打印机的型号
2、点击按钮后,会给打印机发送一个ZPL指令进行打印

<input type="button" value="Send ZPL Label" onclick="writeToSelectedPrinter('^XA^FO200,200^A0N36,36^FDTest Label^FS^XZ')"><br/><br/>

斑马打印机指令ZPL简介

ZPL语言编程基础 免费文档提取:点击提取 提取码:yyli
全面zpl语言指令解析汇报

示例DEMO

var selected_device;
var devices = [];

//获取当前打印时间
var d = new Date();
var m = new Date().getMonth()+1;
var h = d.getHours();
var s = d.getMinutes();
//小于10的拼接上0字符串
function addZero(s) {
	return s < 10 ? ('0' + s) : s;
}
var date = d.getFullYear() + '/' + m + '/' + d.getDate() + ' ' + this.addZero(h) + ':' + this.addZero(s);
function setup() {
	//首先从应用程序中获取默认设备。
	BrowserPrint.getDefaultDevice("printer", function (device) {

	//添加设备
	selected_device = device;
	devices.push(device);
	var html_select = document.getElementById("selected_device");
	var option = document.createElement("option");
	option.text = device.name;
	html_select.add(option);

	//发现应用程序可用的任何其他设备
	BrowserPrint.getLocalDevices(function (device_list) {
	for (var i = 0; i < device_list.length; i++) {
		//添加设备
	var device = device_list[i];
		if (!selected_device || device.uid != selected_device.uid) {
			devices.push(device);
			var option = document.createElement("option");
			option.text = device.name;
			option.value = device.uid;
			html_select.add(option);
			}
		}
	}, function () { alert("Error getting local devices") }, "printer");
}, function (error) {
		alert(error);
		})
	}
//发送打印机ZPL Label
function writeToSelectedPrinter(dataToWrite) {
	selected_device.send(dataToWrite, undefined, errorCallback);
}
<input type="button" value="发送ZPL标签" onclick="writeToSelectedPrinter(
		'^XA'+
		'^CW1,E:SIMSUN.FNT^CI28'+
		'^MD30'+
		'^FWR'+
		'^FO690,40^AO^A174,48^FDZEBRA标签打印测试^FS'+	//中文打印
		'^FO90,450^AO^BQ,2,6^FDLA,0123456789 | 0123456789 | 0123456789 I 012345 | 01234567 I 0123456789 | 012345 | 0123 | 0123457 | 0123456789^FS'+		//二维码打印
		'^FO20,400^AO^A110,38^FD'+ date +'^FS'+	//打印时间
		'^FO88,50^XGE:ZEBRA.GRF'+				//打印图片
		'^XZ'
		)">

打印效果如下:
打印效果

问题描述

解决以下问题,需下载ZebraNet Bridge Enterprise、Zebra Setup Utilities,详细参考文章如下:

  1. 解决中文乱码问题 参考文章

  2. 使用 ZebraNet Bridge 软件转换图片并下载至Zebra打印机 参考文章

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 13
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值