OCR 支持
OCR 插件支持身份证识别,行驶证识别和银行卡识别。
体验入口
申请权限
- 请在小程序后台搜索本插件(AppID=
wx4418e3e031e551be
)设置-第三方服务-添加插件
调用方式
app.json
中增加声明引入插件version
选择最新的
"pages": [],
"plugins": {
"ocr-plugin": {
"version": "2.0.2",
"provider": "wx4418e3e031e551be"
}
}
}
页面的json也要增加声明
{
"usingComponents": {
"ocr-navigator": "plugin://ocr-plugin/ocr-navigator"
}
}
组件
对外暴露自定义组件,UI载体为button(可样式自定义)封装了
参数
属性名 | 类型 | 默认值 | 是否必填 | 说明 |
---|---|---|---|---|
onSuccess | HandleEvent | 是 | 接口调用成功的回调函数 | |
selectedOptions | Array | 否 | 插件中需要的字段,默认全部 | |
certificateType | String | idCard | 否 | 证书类型包含三种 身份证:idCard、驾驶证:drivingLicense、银行卡:bankCard |
以下具体说明三种证件类型的使用方法
1、身份证
certificateType='idCard' 或 无certificateType这个参数
属性名 | 类型 | 默认值 | 是否必填 | 说明 |
---|---|---|---|---|
onSuccess | HandleEvent | 是 | 接口调用成功的回调函数 | |
certificateType | String | idCard | 否 | 证书类型包含三种 身份证:idCard、驾驶证:drivingLicense、银行卡:bankCard |
opposite | Boolean | true | 否 | 是否显示身份证的反面,默认为 true显示反面 |
selectedOptions | Array | 否 | 插件中需要返回的字段,默认全部 |
selectedOptions数组支持可传的项
项目名 | 是否必填 | 说明 |
---|---|---|
id | 否 | 身份证号 |
name | 否 | 姓名 |
sex | 否 | 性别 |
birthday | 否 | 出生日期 |
homePlace | 否 | 家庭地址 |
onSuccess
参数 e.detail
示例代码1
<ocr-navigator bind:onSuccess="success" certificateType="idCard" selectedOptions="{{['id','name','sex','birthday','homePlace']}}">
<button type="primary">身份证识别</button>
</ocr-navigator>
/** wxss **/
/*自定义按钮样式*/
.ocr-wrapper {
margin: 40rpx auto;
width: 375rpx;
}
.intro {
margin: 40rpx;
}
身份证返回结果实例
{"type":"onSuccess","timeStamp":25618,"target":{"id":"","dataset":{}},"currentTarget":{"id":"","dataset":{}},"detail":{"id":"445202199706210331","name":"张三","sex":0,"birthday":"1997-06-21","homePlace":"广州市天河区五xxx路","noExpiryDate":false,"issueDate":"2011-11-02","expiryDate":"2021-11-02"}}
身份证返回结果
属性 | 类型 | 说明 |
---|---|---|
id | string | 身份证号 |
name | string | 姓名 |
sex | number | 性别 0代表男 1代表女 |
birthday | string | 出生日期 |
homePlace | string | 家庭住址 |
issueDate | string | 身份有效开始日期 |
expiryDate | string | 身份证失效日期 |
noExpiryDate | boolean | 身份证是否失效 |
2、银行卡
certificateType='bankCard'
属性名 | 类型 | 默认值 | 是否必填 | 说明 |
---|---|---|---|---|
onSuccess | HandleEvent | 是 | 接口调用成功的回调函数 | |
certificateType | String | bankCard | 是 | 证书类型包含三种 身份证:idCard、驾驶证:drivingLicense、银行卡:bankCard |
selectedOptions | Array | 否 | 插件中需要返回的字段,默认全部 |
selectedOptions数组支持可传的项
项目名 | 是否必填 | 说明 |
---|---|---|
bankName | 否 | 银行名称 |
number | 否 | 银行卡号 |
validDate | 否 | 过期时间 |
onSuccess
参数 e.detail
示例代码1
<ocr-navigator bind:onSuccess="bankSuccess" certificateType="bankCard" selectedOptions="{{['bankName','number','validDate']}}">
<button type="primary">银行卡识别</button>
</ocr-navigator>
/** wxss **/
/*自定义按钮样式*/
.ocr-wrapper {
margin: 40rpx auto;
width: 375rpx;
}
.intro {
margin: 40rpx;
}
银行卡返回结果实例
{"type":"onSuccess","timeStamp":163523,"target":{"id":"","dataset":{}},"currentTarget":{"id":"","dataset":{}},"detail":{"bankName":"","number":"622xxxxxxxxx","validDate":""}
银行卡返回结果
银行卡只支持横版储蓄卡,信用卡,并且只能识别出银行卡号,如果需要银行卡名称、过期时间需要用户手动输入
属性 | 类型 | 说明 |
---|---|---|
bankName | string | 银行卡名称,暂时识别不出 |
number | string | 银行卡号 |
validDate | string | 过期时间 |
3、行驶证
certificateType='drivingLicense'
属性名 | 类型 | 默认值 | 是否必填 | 说明 |
---|---|---|---|---|
onSuccess | HandleEvent | 是 | 接口调用成功的回调函数 | |
certificateType | String | drivingLicense | 是 | 证书类型包含三种 身份证:idCard、驾驶证:drivingLicense、银行卡:bankCard |
selectedOptions | Array | 否 | 插件中需要返回的字段,默认全部 |
selectedOptions数组支持可传的项
项目名 | 是否必填 | 说明 |
---|---|---|
plateNum | 否 | 号牌号码 |
vehicleType | 否 | 车辆类型 |
owner | 否 | owner |
addr | 否 | 住址 |
useCharacter | 否 | 使用性质 |
model | 否 | 品牌型号 |
vin | 否 | 车牌识别代号 |
engineNum | 否 | 发动机号码 |
registerDate | 否 | 注册日期 |
name | 否 | 发证机关 |
record | 否 | 档案编号 |
passengersNum | 否 | 核定载人数 |
totalQuality | 否 | 总质量 |
prepareQuality | 否 | 整备质量 |
loadQuality | 否 | 核定载质量 |
leadQuality | 否 | 准牵引总质量 |
onSuccess
参数 e.detail
示例代码1
<ocr-navigator bind:onSuccess="driverSuccess" certificateType="drivingLicense" selectedOptions="{{['plateNum','vehicleType','owner']}}">
<button type="primary">行驶证识别</button>
</ocr-navigator>
/** wxss **/
/*自定义按钮样式*/
.ocr-wrapper {
margin: 40rpx auto;
width: 375rpx;
}
.intro {
margin: 40rpx;
}
行驶证返回结果实例
{"type":"onSuccess","timeStamp":21953,"target":{"id":"","dataset":{}},"currentTarget":{"id":"","dataset":{}},"detail":{"plateNum":"粤xxxx","vehicleType":"小型轿车","owner":"周xx","addr":"广东省xxxxx","useCharacter":"非营运","model":"东风日产牌xxxxx","vin":"xxxxx","engineNum":"873073Y","registerDate":"2017-11-13","name":"","record":"442923230932","passengersNum":"26人","totalQuality":"6900kg","prepareQuality":"4480kg","loadQuality":"","leadQuality":""}}
行驶证返回结果
行驶证支持正副页面在一张图片中
属性 | 类型 | 说明 |
---|---|---|
plateNum | String | 号牌号码 |
vehicleType | String | 车辆类型 |
owner | String | owner |
addr | String | 住址 |
useCharacter | String | 使用性质 |
model | String | 品牌型号 |
vin | String | 车牌识别代号 |
engineNum | String | 发动机号码 |
registerDate | String | 注册日期 |
name | String | 发证机关 |
record | String | 档案编号 |
passengersNum | String | 核定载人数 |
totalQuality | String | 总质量 |
prepareQuality | String | 整备质量 |
loadQuality | String | 核定载质量 |
leadQuality | String | 准牵引总质量 |
说明
本文档配合2.0.2
以及以上的插件使用,并且调试基础库在2.4.0
以及以上才能使用