更新记录
1.0.1(2023-10-17)
- 添加打印字体样式。
1.0.0(2023-08-07)
发布插件
平台兼容性
Android | Android CPU类型 | iOS |
---|---|---|
适用版本区间:5.0 - 12.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原生插件配置”->”云端插件“列表中删除该插件重新选择
概述
- 支持安卓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":"测试文本"});