更新记录
1.1.0(2022-06-30)
本次主要更新: 1.增加android版本,只支持文字识别
1.0.0(2022-06-28)
首次更新
平台兼容性
Android | Android CPU类型 | iOS |
---|---|---|
适用版本区间:4.4 - 12.0 | armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 | 适用版本区间:13 - 16 |
原生插件通用使用流程:
- 购买插件,选择该插件绑定的项目。
- 在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原生插件配置”->”云端插件“列表中删除该插件重新选择
KJ-OCR
离线OCR、文字识别、ios证件扫描、ios系统OCR、可用于相关证件识别(ios、android)
使用
<template>
<view class="content">
<button type="primary" @click="startOCR">开始文字识别</button>
<button type="primary" @click="startScan">开始证件扫描(ios)</button>
<button type="primary" @click="getRecognitionLanguages">获取支持的识别语言(ios)</button>
<view>{{title}}</view>
</view>
</template>
<script>
let KJOCR = uni.requireNativePlugin('KJ-OCR');
export default {
data() {
return {
title: ''
}
},
onLoad() {},
methods: {
startOCR() {
uni.chooseImage({
count: 1,
sizeType: ['original', 'compressed'],
sourceType: ['album', 'camera'],
success: (res) => {
let filepath = res.tempFilePaths[0];
let imagePath = plus.io.convertLocalFileSystemURL(filepath);
console.log(imagePath);
KJOCR.startOCR({
"imagePath": imagePath, //要文字识别的图片路径
"recognitionLevel": 0, //ios才支持,识别级别 0-准确 1-快速
"usesLanguageCorrection": true, //ios才支持,是否使用语言校正
"recognitionLanguages": ["zh-Hans", "zh-Hant",
"en-US"
], //ios才支持,识别语言,注意:ios15及以上才支持中文识别
"isGrayImage": true //ios才支持,图片是否灰度之后在识别,准确度更高
}, (res) => {
//注意:ios和andorid,返回的坐标位置结果字段不一样,其它都一样
console.log("startOCR:" + JSON.stringify(res));
this.title = JSON.stringify(res);
})
}
});
},
startScan() { //ios才支持
var dic = {
"savePath": plus.io.convertLocalFileSystemURL("_doc/KJ-OCR"), //保存图片位置,一定要是_doc绝对路径
"format": "jpeg", //保存的图片格式 有效值:png、jpeg
"quality": 100, //保存的图片质量,取值1-100, ios png 无效
}
KJOCR.startScan(dic, (res) => {
console.log("startScan:" + JSON.stringify(res));
if (res.type == "startScan") {
console.log("准备扫描");
} else if (res.type == "finishScan") {
console.log("扫描完成");
var imageFilePaths = res.imageFilePaths;
for (var i = 0; i < imageFilePaths.length; i++) {
var imagePath = imageFilePaths[i];
KJOCR.startOCR({
"imagePath": imagePath, //要文字识别的图片路径
"recognitionLevel": 0, //ios才支持,识别级别 0-准确 1-快速
"usesLanguageCorrection": true, //ios才支持,是否使用语言校正
"recognitionLanguages": ["zh-Hans", "zh-Hant",
"en-US"
], //ios才支持,识别语言,注意:ios15及以上才支持中文识别
"isGrayImage": true //ios才支持,图片是否灰度之后在识别,准确度更高
}, (res) => {
//注意:ios和andorid,返回的坐标位置结果字段不一样,其它都一样
console.log("startOCR:" + JSON.stringify(res));
this.title = JSON.stringify(res);
})
}
} else if (res.type == "cancelScan") {
console.log("扫描取消");
} else if (res.type == "errorScan") {
console.log("扫描错误");
}
})
},
getRecognitionLanguages() { //ios才支持
KJOCR.getRecognitionLanguages((res) => {
console.log("getRecognitionLanguages:" + JSON.stringify(res));
})
}
},
}
</script>