收藏
评论

打印机打印标签

项目地址:https://github.com/dyl169/WAPP_printer.git有需要的可以参考一下

1.在需要调用蓝牙的页面中
初始化是传入设备的主服务UUID base.Ble.initBle(['FFF0', '0A71']);

2.在onLoad中执行监听函数(记得在onUnload中 remove掉事件监听)
//初始化所有监听
    initListen: function() {
        //监听蓝牙可用状态
        base.Event.listen(base.EventModel.EVENT_BLESTATE, function(data) {
            if (data.code) {
                console.log('蓝牙已打开')
                base.blestate = true;
            } else {
                console.log('蓝牙已关闭')
                base.blestate = false;
            }
        })

        //监听扫描设备
        base.Event.listen(base.EventModel.EVENT_SCAN, function(data) {
            if (data.stop) {
                console.log('停止扫描');
                that.setData({
                    bleSearchIng: false,
                })
            } else {
                var device = data.datainfo[0];
                console.log('扫描到的设备 : ' + JSON.stringify(device));
                that.data.deviceArray.push(device);
                that.setData({
                    deviceArray: that.data.deviceArray,
                    showDeviceDialog: true,
                })
            }
        })

        //监听蓝牙连接状态
        base.Event.listen(base.EventModel.EVENT_CONNSTATE, function(data) {
            console.log('连接状态变化');
            if (data.code == true) {
                console.log('index 连接成功')

                for (var i = 0; i < that.data.deviceArray.length; i++) {
                    if (that.data.deviceArray[i].deviceId === data.datainfo) {
                        that.data.connDevice = that.data.deviceArray[i];
                    }
                }

                that.setData({
                    connSucced: true,
                    connDevice: that.data.connDevice,
                })
            } else {
                that.setData({
                    connSucced: false,
                })
            }
        })

        //监听蓝牙值变化
        base.Event.listen(base.EventModel.EVENT_RECEIVE, function(result) {
            if (result.code == true && pageState == 'onLoad' || pageState == 'onShow') {
                var data = result.datainfo;
                console.log('main 页面接受到消息:' + data);

            }
        })
    },

3.如果打印机无法打印 请查看打印机说明书 知否支持TSPL或ESC指令指令 (本demo使用的佳博答应机)
  自行将PrintUtil.js中的打印指令修改为对应的打印指令即可


最后一次编辑于  08-19  (未经腾讯允许,不得转载)
赞 3
收藏

12 个评论

  • 张伟萍
    张伟萍
    08-21

    打印机没打印完一次,都得重新链接,好麻烦,能不能保持打印机跟小程序一直链接呢

    08-21
    赞同
    回复 1
    • 啊 五彩斑斓的黑
      啊 五彩斑斓的黑
      08-21
      我之前试过保存当前连接设备的uuid下次打印之前先调用方法判断这个设备是否处于连接状态;
      08-21
      回复
  • 张伟萍
    张伟萍
    08-17


    各位路过的英雄好汉,不知道各位有没有遇到过这个问题,小程序链接蓝牙打印机,连接成功了,指令也都输入成功了,但是为啥打印机没反应呢

    08-17
    赞同
    回复 4
    • 啊 五彩斑斓的黑
      啊 五彩斑斓的黑
      08-19
      你的打印机是很么机型
      08-19
      回复
    • dds阿杜
      dds阿杜
      11-04
      请问你的打印可以打印了吗?我怎么按照他的代码连接不上打印机,我单独用官方的可以,但是官方的不能打印
      11-04
      回复
    • 张伟萍
      张伟萍
      11-04回复啊 五彩斑斓的黑
      跟打印机厂家确认,是机型问题,两种打印机识别的指令不同
      11-04
      回复
    • 张伟萍
      张伟萍
      11-04回复dds阿杜
      我换回原来的机型去了, 打印机厂家说不同的打印机识别的指令是不一样的,坑。
      11-04
      回复
  • 木讷
    木讷
    07-08

    搁着GitHub里面就放一堆跟打印毫无关系的东西?

    07-08
    赞同
    回复 1
    • 啊 五彩斑斓的黑
      啊 五彩斑斓的黑
      08-19
      哪个和打印无关呢
      08-19
      回复
  • 悟空
    悟空
    05-06

    大佬  这个是有打印机品牌连接限制吗   有些打印机搜索不到

    05-06
    赞同
    回复 9
    • 啊 五彩斑斓的黑
      啊 五彩斑斓的黑
      05-06

      支持低功耗的蓝牙设备都可搜到

      05-06
      回复
    • 悟空
      悟空
      05-06回复啊 五彩斑斓的黑

      打印机支持低功耗的蓝牙设备  现在是搜索不到额 有没有什么地方可以调整的啊

      05-06
      回复
    • 啊 五彩斑斓的黑
      啊 五彩斑斓的黑
      05-06

      这个设置了没有,蓝牙的主服务id

      05-06
      回复
    • 悟空
      悟空
      05-06回复啊 五彩斑斓的黑

      有搜索到的打印机 也连接不上

      05-06
      回复
    • 啊 五彩斑斓的黑
      啊 五彩斑斓的黑
      05-06

      主服务id没设置或者设置错了就会连不上

      05-06
      回复
    查看更多(4)
  • 南吕二九
    南吕二九
    04-29

    老哥 这个字体大小是怎么设置呢

    04-29
    赞同
    回复 2
    • 啊 五彩斑斓的黑
      啊 五彩斑斓的黑
      05-06

      str += 'TEXT 240,30,"TSS24.BF2",0,1.5,1.5,"' + name + '"\n'; 1.5,1.5就是放大倍率

      05-06
      回复
    • dds阿杜
      dds阿杜
      11-01
      这样设置主uiudbase.Ble.initBle(['FFF0', '0A71', '49535343-8841-43F4-A8D4-ECBE34729BB3']);对吗?怎么连接不上,单独这个ID也连接不上
      11-01
      回复
  • 曾家琦
    曾家琦
    04-19

    您好,您这个是蓝牙打印的嘛?

    04-19
    赞同
    回复 3
    • 啊 五彩斑斓的黑
      啊 五彩斑斓的黑
      04-19

      是的

      04-19
      回复
    • 曾家琦
      曾家琦
      04-19

      您好阿,我下载了您的项目。但是扫描不出打印机。可以加您QQ请教一下嘛?

      04-19
      回复
    • dds阿杜
      dds阿杜
      11-04回复曾家琦
      你的打印可以用了吗?我下了这个也是扫描不出来
      11-04
      回复
  • FAIRY新
    FAIRY新
    02-13

    对就是这个场景

    02-13
    赞同
    回复
  • 石小强
    石小强
    01-29

    您好, 我想请问一下,我的打印机打印出来的效果是这样的,是什么原因啊?

    01-29
    赞同
    回复 1
    • 啊 五彩斑斓的黑
      啊 五彩斑斓的黑
      02-13

      打印机支持这种指令打印吗

      02-13
      回复
  • 深藏功与名。
    深藏功与名。
    01-10

    这里是我踩坑完成结果,楼主的实例都可以用,就是这个1.5要改下(还有指令不要有空格,我之前出于代码习惯每次一个逗号都一个空格),不然神坑。分享一下避免更多的人躺坑。在这里也感谢楼主的无私奉献,节省了不少时间。以下是打印结果


    01-10
    赞同
    回复 1
    • 张伟萍
      张伟萍
      08-17
      松哥,麻烦请教个问题,小程序链接打印机,连上了打印机,指令也都写入成功了,但是打印机为啥没反应呢
      08-17
      回复
  • 深藏功与名。
    深藏功与名。
    01-09

    一开始是打印了二维码的,后面我取消打印二维码 光打印文字(就是这些中文) 结果是白纸一张


    01-09
    赞同
    回复

正在加载...