Skip to content

x-ocr-s 离线文档识别

离线 OCR。通用文本识别中文 / 日文,另有身份证结构化识别与号码校验。

兼容性

HarmonyIOSAndroidWEB小程序
支持支持支持支持支持

调用

ts
import { xOcrPare, xOcrIdCard } from "@/uni_modules/x-ocr-s"

xOcrPare({
  path: imgPath,
  langs: "zh",
  success: (res) => {
    console.log(res.text)
  }
})

xOcrIdCard({
  path: imgPath,
  success: (res) => {
    if (res.idInfo.valid) {
      console.log(res.fields.name, res.idInfo.number)
    }
  }
})

方法

名称需要说明
xOcrParepathlangszh / ja),可选 zhixingdu通用文本识别,返回 text / textBlock
xOcrIdCardpath,可选 zhixingdu身份证结构化识别,返回正反面、字段和号码校验

参数

xOcrPare / XOcrOpts

字段说明默认
path图片路径必填
langszh / ja必填
zhixingdu置信度 0~1,仅 Android0.5
success / fail / complete回调-

XOcrResulttext 纯文本行,textBlock 带定位的文本块。

xOcrIdCard

字段说明默认
path图片路径必填
zhixingdu仅 Android0.5
success / fail / complete回调-

XOcrIdCardResultsidefront / back / unknown)、fields(姓名、民族、住址、号码等)、idInfo(号码校验与派生生日/性别/年龄)、warningslines

错误码见插件内说明,常见 10011006

平台差异

  1. zhixingdu 仅 Android。
  2. 微信仅支持中文,日文返回 1006

版本

版权归https://xui.tmui.design你不得修改及二次开发,仅供TMUI4会员商用使用。不得转给非VIP会员使用,一经查实数倍赔偿,并追究法律责任。

更新日志

1.1.0(2026-08-05)

  • 新增身份证识别 xOcrIdCard(),五端行为一致:各端跑自己的通用中文 OCR,再由共享层 utssdk/libs/idcard.uts 做关键字锚点解析与号码校验。只负责识别与校验,取图仍由调用方 (相机插件、相册等)提供路径,不做卡面检测与透视矫正。
  • 结构化输出姓名、性别、民族、出生、住址、公民身份号码(人像面)与签发机关、有效期限 (国徽面),并自动判定证件面。
  • 号码校验实现 GB 11643:加权校验码、15 位一代证补世纪升位、出生日期合法性(含闰年)、 省级行政区划码。生日 / 性别 / 年龄一律从号码派生,OCR 直读值只用于交叉比对, 不一致时写入 warnings。号码校验失败不算失败,仍回调 success 并附带原因。
  • 容错:合并行版式(如「性别男民族汉」)、住址跨行合并、号码带空格、形近字回救 (O→0、I→1、S→5 等,由校验码兜底防误判)、号码锚点被糊掉时退化为全文扫描。
  • 新增微信小程序端支持,OCR 走微信内置 VisionKit(基础库 2.27.0+),零模型零包体。 该端 langs 仅支持 zh,且需用「预览」运行——真机调试模式下 VisionKit 会启动失败。
  • 新增错误码 1005(未识别到身份证信息)、1006(小程序端仅支持中文)。

1.0.9(2025-10-15)

  • 安卓,ios,鸿蒙,web 4平台删除了下载,选择识别,统一由外部自行提供图片路径识别,并且采用dcloud api调用风格,已使用的用户请务必阅读使用文档后再升级使用。切不可直接替换升级。
  • 升级后,事件处理,错误机制显示更清晰。
  • 同时安卓和ios升级了插件版本,有效提升了识别率,同时安卓仅支持6.0+,Ios仅15.5+,鸿蒙21+

1.0.8(2025-08-17)

  • 兼容鸿蒙原生

1.0.7(2025-02-14)

  • 增加对web的支持,web使用时需要网络加载模型数据

1.0.6(2024-12-18)

  • ios,安卓添加本地路径识别函数localFilePathImageBuilder,可自己循环批量处理.

1.0.5(2024-11-01)

  • 修复ios可能的兼容问题

1.0.4(2024-10-31)

  • ios没对齐安卓,失败不会返回回调.

1.0.3(2024-10-27)

升级了调用方式,使得安卓,ios用同样的方式调用,不再区别,统一使用callback,并且在回调中携带回了坐标,以便让大家通过坐标计算识别比例或者绘制位置 .并且文本块统一为行返回(之前是文本块返回,但在源始数据中还是块和坐标)

1.0.2(2024-09-24)

  • 各个函数追回了个参数language:string|null,可以是zh,ja,两种语言中文和日文识别。

1.0.1(2024-05-04)

  • 更新支持IOS端,需要IOS12.0(含)+

1.0.0(2024-04-10)

  • ocr文本识别,ai模型识别,离线识别。
  • tmui4.0种子用户,可免费赠送源码,无需购买
最近更新