更新记录
1.0.0(2023-07-14)
1.0.0
1、蓝畅PDA热敏打印 2、蓝畅PDA标签打印 3、蓝畅PDA自定义打印
平台兼容性
Android | Android CPU类型 | iOS |
---|---|---|
适用版本区间:5.0 - 10.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原生插件配置”->”云端插件“列表中删除该插件重新选择
Fly-lcpda-PrinterModule - Android
注意:本插件为打印插件 需要配合Android系统的打印机使用
注意:本插件为蓝畅PDA专用插件,适配lcsdk1.1的sdk系统
Fly-lcpda-PrinterModule
控件为 module,可以在 vue 中声明使用
<template>
<view>
<button type="warn" @click="initPrinter">打印机初始化</button>
<button type="warn" @click="closePrinter">关闭打印机</button>
<button type="warn" @click="resetPrinter">重置打印机</button>
<button type="warn" @click="printerCheck">打印自检</button>
<br />
<br />
<button type="default" @click="PrintLabel">标签样本打印</button>
<button type="default" @click="PrintLabelCode">标签样本条形码打印</button>
<button type="default" @click="PrintThermal">热敏样本打印</button>
<br />
<br />
</view>
</template>
<script>
const printerModule = uni.requireNativePlugin('fly-lcpda-PrinterModule');
var globalEvent = uni.requireNativePlugin('globalEvent');
export default {
onLoad() {
// 添加打印状态监听
globalEvent.addEventListener('onPrintCallback', function(e) {
uni.showToast({
title: 'onPrintCallback: ' + JSON.stringify(e),
icon: 'none',
duration: 2000
});
});
//打印机版本获取回调
globalEvent.addEventListener('onVersion', function(e) {
uni.showToast({
title: 'onVersion: ' + JSON.stringify(e),
icon: 'none',
duration: 2000
});
});
},
data() {
return {
}
},
methods: {
closePrinter() {
},
initPrinter() {
// 调用异步方法
console.log('初始化');
var ret = printerModule.initPrinter({});
},
closePrinter() {
console.log("关闭");
printerModule.closePrinter();
},
resetPrinter() {
console.log("重置打印机");
printerModule.resetPrinter();
},
PrintLabel() {
// 标签样本打印
// 开启黑标
printerModule.printEnableMark({
enable: true
});
// 打印浓度 1-39
printerModule.printConcentration({
density: 25
});
// 打印内容
printerModule.printLine({
lines: 1
});
printerModule.printText({
content: "标签测试"
});
printerModule.printLine({
lines: 1
});
printerModule.printText({
content: "这是一行测试标签"
});
printerModule.printLine({
lines: 1
});
printerModule.printText({
content: "这是一行测试标签"
});
// 设置走纸距离 0-2000
printerModule.setFeedPaperSpace({
space: 200
});
// 开始打印
printerModule.start();
},
printerCheck() {
// 打印自检
printerModule.printerCheck();
},
PrintThermal() {
// 热敏打印模板
// 关闭黑标
printerModule.printEnableMark({
enable: false
});
// int offset ()1=左边 2=中间 3=右边, int fontSize(字体大小 1-8), boolean isBold, boolean isUnderLine, String content
printerModule.printTextSuper({
offset: 2,
fontSize: 3,
isBold: false,
isUnderLine: false,
content: "------------------------------------------------------\n"
});
printerModule.printTextSuper({
offset: 2,
fontSize: 5,
isBold: true,
isUnderLine: true,
content: "路边停车缴费\n"
});
printerModule.printTextSuper({
offset: 2,
fontSize: 3,
isBold: false,
isUnderLine: false,
content: "------------------------------------------------------\n"
});
printerModule.printLine({
lines: 1
});
//道路名称
printerModule.printTextSuper({
offset: 1,
fontSize: 3,
isBold: false,
isUnderLine: false,
content: "收费单位:深圳市xxx科技\n"
});
printerModule.printTextSuper({
offset: 1,
fontSize: 3,
isBold: false,
isUnderLine: false,
content: "收费员:张三\n"
});
printerModule.printTextSuper({
offset: 1,
fontSize: 3,
isBold: false,
isUnderLine: false,
content: "道路名称:深南大道1008号\n"
});
printerModule.printTextSuper({
offset: 1,
fontSize: 3,
isBold: false,
isUnderLine: false,
content: "车位号:B01\n"
});
//车牌号
printerModule.printTextSuper({
offset: 1,
fontSize: 5,
isBold: true,
isUnderLine: false,
content: "车牌:粤Bxxxxxx\n"
});
printerModule.printTextSuper({
offset: 2,
fontSize: 3,
isBold: false,
isUnderLine: false,
content: "------------------------------------------------------\n"
});
//提示补缴
printerModule.printTextSuper({
offset: 2,
fontSize: 3,
isBold: false,
isUnderLine: false,
content: "温馨提示\n"
});
printerModule.printTextSuper({
offset: 1,
fontSize: 3,
isBold: false,
isUnderLine: false,
content: "粤Bxxxxx号车主...\n"
});
printerModule.printTextSuper({
offset: 2,
fontSize: 3,
isBold: false,
isUnderLine: false,
content: "------------------------------------------------------\n"
});
printerModule.printLine({
lines: 5
});
printerModule.start();
},
PrintLabelCode() {
// 标签样式条形码打印
let barcode = "100100100";
let title = "测试标题";
// 调用异步方法
printerModule.PrintLabelCode({
'barcode': barcode,
'title': title,
'line': 6
},
(ret) => {
uni.showToast({
title: 'PrintLabelCode: ' + JSON.stringify(ret),
icon: 'none',
duration: 2000
});
});
}
}
}
</script>
<style>
</style>