更新记录

1.0.0(2024-12-10)

全新版本发布


平台兼容性

Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
HBuilderX 4.36,Android:6.0,iOS:不支持,HarmonyNext:不确定 × × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序
× × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
× × × × × × × × ×

导入

import {
    // 初始话打印机
    initPrinter,
    // 获取打印机状态
    getPrinterStatus,
    // 打印
    printer,
    // 打印二维码
    printQrcode,
    // 打印图片
    printerImg
} from './uni_modules/laowu-printer'

初始化

initPrinter()

获取状态

getPrinterStatus() 这里提供一个简易的算法

let data = {
    'lack_paper_status': '正常', // 是否缺纸
    'paper_status': '纸张充足', // 是否纸将尽
    'printer_status': '正常', // 打印机状态
}

if (status == -1) {
    // 打印机状态错误
    data['printer_status'] = '打印机错误';
} else {
    let binary = this.decimalTo8BitBinary(status)
    // 拆分为单个字符
    let charArray = (binary as string).split('');
    if (charArray.length != 8) {
        return; // 没有检测到
    }

    // 缺纸
    if (charArray[1].equals('1')) {
        data['lack_paper_status'] = '缺纸'
        data['printer_status'] = '缺纸'
    }

    // 纸将尽
    if (charArray[4].equals('1')) {
        data['paper_status'] = '纸将尽'
    }
}

打印

printer(hex_str : string)

打印二维码

printQrcode(qrcode : string)

打印图片

    // 图片地址
    let result = ''
    uni.downloadFile({
        url: result,
        timeout: 240000,
        success: (res) => {
            console.log('downloadFile success, res is', res.tempFilePath)
            printerImg(res.tempFilePath, () => {
                // 打印完成

            })
        },
        fail: (err) => {
            console.log(err)
            console.log('图片下载失败')
            uni.showToast({
                title: '下载失败',
                icon: 'none'
            })
            that.fail()
        },
    })

隐私、权限声明

1. 本插件需要申请的系统权限列表:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

暂无用户评论。

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问