更新记录
1.0.0(2021-12-14)
插件发布
平台兼容性
Android | Android CPU类型 | iOS |
---|---|---|
适用版本区间:5.0 - 11.0 | armeabi-v7a:支持,arm64-v8a:支持,x86:支持 | × |
原生插件通用使用流程:
- 购买插件,选择该插件绑定的项目。
- 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
- 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
- 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
- 开发完毕后正式云打包
付费原生插件目前不支持离线打包。
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原生插件配置”->”云端插件“列表中删除该插件重新选择
概述
- 支持打印图片
- 支持打印条形码
- 支持打印二维码
- 支持打印文字
温馨提示 如何调用插件
var getModel = uni.requireNativePlugin("yuange-YGUSBPrintModule");
打印图片
getModel.callNativePrintDiskImagefile({
//图片路径
'picFilePath': '传入图片路径,例如:/sdcard/aaa.jpg',
},
(ret) => {
})
打印条形码
/**
* 打印一维条码
* @param iWidth 条码宽度,取值2-6 单位0.125mm
* @param iHeight 条码高度,取值1-255 单位0.125mm
* @param iHrisize 条码显示字符字型0 12*24 1 9*17
* @param iHriseat 条码显示字符位置0 无、1 上、 2 下、3 上下
* @param iCodetype 条码的类型(UPC-A 0,UPC-E 1,EAN13 2,EAN8 3, CODE39 4,
* ITF 5,CODABAR 6,Standard EAN13 7,
* Standard EAN8 8,CODE93 9,CODE128 10)
* @param strData 条码内容
*/
var ret = getModel.callNativePrint1Dbar({
'iWidth': 5,
'iHeight': 50,
'iHrisize': 0,
'iHriseat': 0,
'iCodetype': 0,
'strData': '1111111111',
},
(ret) => {})
打印二维码
/**
* 打印QR码
* @param strData 内容
* @param iLmargin 左边距,取值0-27 单位mm
* @param iMside 单位长度,即QR码大小,取值1-8,(有些打印机型只支持1-4)
* @param iRound 环绕模式,1 环绕(混排,有些机型不支持)、0立即打印(不混排)
*/
var ret = getModel.callNativePrintQrcode({
'iLmargin': 1,
'iMside': 3,
'iRound': 0,
'strData': '11111111111',
},
(ret) => {})
打印文本
/**
* 打印字符串
* @param strData 打印的字符串内容
* @param iImme 是否加换行指令0x0a: 0 加换行指令,1 不加换行指令
*/
var ret = getModel.callNativePrintString({
'strData': '1111111',
'iImme': 0,
},
(ret) => {
})
通用发送指令
//例如:设置字体加粗
var bCmd = new Array(3);
bCmd[0]=0x1B;
bCmd[1]=0x47;
bCmd[2]=1;
/**
* 通用发送打印指令
* command:指令
*/
getModel.callNativePrintSendCommand({
'command': bCmd,
});
打印小票示例
/**
* 打印进入汉字模式
*/
getModel.callNativePageTypeSetInit();
/**
* 打印细走纸
* @param Lnumber 范围 0-250
*/
getModel.callNativePrintFeedDot({
'Lnumber': 1,
});
/**
* 打印字符串
* @param strData 打印的字符串内容
* @param iImme 是否加换行指令0x0a: 0 加换行指令,1 不加换行指令
*/
getModel.callNativePrintString({
'strData': '店号:8888 机号:100001',
'iImme': 0,
});
getModel.callNativePrintString({
'strData': '电话:0755-12345678',
'iImme': 0,
});
getModel.callNativePrintString({
'strData': '-------------------------------',
'iImme': 0,
});
getModel.callNativePrintString({
'strData': '怡宝矿泉水 2.00',
'iImme': 0,
});
getModel.callNativePrintString({
'strData': '百事可乐(罐装) 2.00',
'iImme': 0,
});
/**
* 执行到下一个水平制表位置
* 描述:执行到下一个水平制表位置
*/
getModel.callNativePrintNextHT();
getModel.callNativePrintString({
'strData': '应付 4.00',
'iImme': 0,
});
/**
* 打印走纸
* @param iLine 走纸行数
* 描述:走纸,单位字符行
*/
getModel.callNativePrintFeedline({
'iLine': 5,
});
/**
* 打印切纸
* @param iMode 0 全切,1半切
*/
getModel.callNativePrintCutpaper({
'iMode': 1,
});
/**
* 打印QR码
* @param strData 内容
* @param iLmargin 左边距,取值0-27 单位mm
* @param iMside 单位长度,即QR码大小,取值1-8,(有些打印机型只支持1-4)
* @param iRound 环绕模式,1 环绕(混排,有些机型不支持)、0立即打印(不混排)
*/
getModel.callNativePrintQrcode({
'iLmargin': 10,
'iMside': 5,
'iRound': 0,
'strData': '"http://weixin.qq.com/',
});