不说废话,直接写教程:
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。这两个位置需要根据不同的情况进行修改。
文章作者:沃航科技