更新记录

1.0.1(2023-10-17)

  1. 添加打印字体样式。

1.0.0(2023-08-07)

发布插件


平台兼容性

Android Android CPU类型 iOS
适用版本区间:5.0 - 12.0 armeabi-v7a:支持,arm64-v8a:支持,x86:支持 ×

原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios

注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择


概述

  • 支持安卓USB打印小票文字、二维码、条形码

温馨提示 如何调用插件

    const plugin = uni.requireNativePlugin('unplugin-UsbPrintModule');  

连接打印机

  plugin.printConnect({},
    result => {
        this.title = JSON.stringify(result);
    }
  )

获取打印机状态

  //注意使用此即可请先连接打印机
  plugin.getPrintStatus({},
    result => {
        //返回json:status参数:0正常、-2缺纸、-3开盖、-1获取失败、1状态走纸、打印、-4状态过热
        this.title = JSON.stringify(result);
    }
  )

打印示例

    printExample() {
        //设置标签尺寸宽高,按照实际尺寸设置 单位mm
        plugin.printAddSize({
            "widht":58,
            "height":70
            });
        // 设置标签间隙,按照实际尺寸设置,如果为无间隙纸则设置为0 单位mm
        plugin.printAddGap({
            "gap":0
            }); 
        // 设置打印方向 0,1
        plugin.printAddDirection({
            "direction":0,
            "mirror":0
            }); 
        //设置原点坐标    
        plugin.printAddReference({
            "x":0,
            "y":0
            }); 
        //浓度    
        plugin.printAddDensity({
            "density":4
            }); 
        //撕纸模式开启 ON OFF BATCH   
        plugin.printAddTear({
            "addTear":"ON"
            }); 
        //清除缓冲区 
        plugin.printAddCls({}); 
        //打印文字                      
        plugin.printText({
            "x":30,
            "y":20,
            "text":"测试文本"
            }); 

        //二维码
        plugin.printQRCode({
            "x":30,
            "y":250,
            "text":"http://www.baidu.com",
            "radius":5
            }); 
        //条形码   
        plugin.printBarCode({
            "x":30,
            "y":380,
            "height":80,
            "text":"12345678"
            }); 
        // 打印标签 
        plugin.printAddPrint({});
        // 打印标签后 蜂鸣器响
        plugin.printAddSound({});
        //开启钱箱  
        plugin.printAddCashdrwer({});
        //开始执行打印
        plugin.printStart({},
            result => {
                this.title = JSON.stringify(result);
            }
        )                                                           
    }

打印文字样式


        //fontType类型
        /**
        * FONT_0("0.TTF"),
        Bold("1.TTF"),
        SongTi("2.TTF"),
        Thai("4.TTF"),
        FONT_1("1"),
        FONT_2("2"),
        FONT_3("3"),
        FONT_4("4"),
        FONT_5("5"),
        FONT_6("6"),
        FONT_7("7"),
        FONT_8("8"),
        FONT_9("9"),
        FONT_10("10"),
        SIMPLIFIED_16_CHINESE("TSS16.BF2"),
        SIMPLIFIED_20_CHINESE("TSS20.BF2"),
        SIMPLIFIED_24_CHINESE("TSS24.BF2"),
        SIMPLIFIED__32_CHINESE("TSS32.BF2"),
        TRADITIONAL_CHINESE("TST24.BF2"),
        KOREAN("K");
                 */     

   plugin.printTextFontStyle({
            "x":30,
            "y":20,
            "text":"测试文本",
            "fontType":"1.TTF", //详见fontType类型
            "xscal":1, //如果没有效果设置为0,成功的范围1-10
            "yscal":1 //如果没有效果设置为0,成功的范围1-10
            }); 

  plugin.printText32({
            "x":30,
            "y":20,
            "text":"测试文本"});

   plugin.printTextBold({
            "x":30,
            "y":20,
            "text":"测试文本"});    

  plugin.printTextSongTi({
            "x":30,
            "y":20,
            "text":"测试文本"});    

  plugin.printTextFONT0({
            "x":30,
            "y":20,
            "text":"测试文本"});         

  plugin.printTextFONT10({
        "x":30,
        "y":20,
        "text":"测试文本"});                                     

隐私、权限声明

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

存储权限 WRITE_EXTERNAL_STORAGE、READ_EXTERNAL_STORAGE

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

插件不采集任何数据

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

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