不说废话,直接写教程:
1.首先要下载Zadig,下载地址传送门,他是一个usb通用驱动程序,因为佳博官方驱动执行device.open会报错。
2.接上打印机并开机,然后按照下图做,以达到驱动能被open的目的。



3.安装nodejs依赖,方法为npm install usb
4.最终代码如下:
const usb=require('usb')
// let devicelist = usb.getDeviceList()
// console.log(devicelist)
function PrintLabel(cmds) {
let device = usb.findByIds(0x0471, 0x0055)
device.open()
for (let i = 0, len = device.interfaces.length ; i < len ; i++) {
for (let j = 0, len2 = device.interfaces[i].endpoints.length ; j < len2 ; j++) {
if (device.interfaces[i].endpoints[j].direction == 'out') {
device.interfaces[i].claim() // 找到了要用的对象后,首先要声明所有权
let outEndpoint = device.interfaces[i].endpoints[j]
outEndpoint.transferType = 2 // bulk 批量传输
outEndpoint.transfer(cmds, (err) => {
if (err) {
console.log(err)
}
device.close()
})
return
}
}
}
device.close()
}
let commands = 'SIZE 40 mm,30 mm\r\n' +
'GAP 2 mm,0 mm\r\n' +
'CLS\r\n' +
'TEXT 10,10,"4",0,1,1,"MackerNoon"\r\n' +
'BARCODE 10,60,"128",30,1,0,2,2,"altospos.com"\r\n' +
'PRINT 1\r\n' +
'END'
PrintLabel(commands)只需要调用本函数即可,注意vid与did不同打印机不同,commands的第一句与第二句代表着纸张是40*30的,两张纸间隔2mm。这两个位置需要根据不同的情况进行修改。
文章作者:沃航科技