更新记录
0.0.5(2025-12-09)
0.0.4(2025-12-09)
0.0.1(2025-03-13)
查看更多
平台兼容性
uni-app(4.83)
| Vue2 |
Vue3 |
Chrome |
Safari |
app-vue |
app-nvue |
Android |
iOS |
鸿蒙 |
| √ |
√ |
√ |
√ |
√ |
- |
5.0 |
√ |
√ |
| 微信小程序 |
支付宝小程序 |
抖音小程序 |
百度小程序 |
快手小程序 |
京东小程序 |
鸿蒙元服务 |
QQ小程序 |
飞书小程序 |
快应用-华为 |
快应用-联盟 |
| - |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
uni-app x(4.82)
| Chrome |
Safari |
Android |
iOS |
鸿蒙 |
微信小程序 |
| √ |
√ |
5.0 |
√ |
√ |
- |
lime-ocr 文字识别组件
一个功能强大的文字识别组件,支持多语言识别和结构化结果返回。可用于图片文字提取、文档扫描、名片识别、表格识别等多种场景。组件提供了简单易用的API,使开发者能够方便地在应用中集成OCR功能,提升用户体验。
文档链接
📚 组件详细文档请访问以下站点:
安装方法
- 在uni-app插件市场中搜索并导入
lime-ocr
- 导入后在页面引入相关方法
- 需要自定义基座才能使用
Web端额外依赖
Web端需要安装Tesseract.js依赖库:
npm install tesseract.js
代码演示
基础用法
识别图片中的文字并获取结果:
// 非 uniappx 不需要导入类型 OCRRecognizeOptions
import { recognizeImage, type OCRRecognizeOptions } from '@/uni_modules/lime-ocr'
const onClick = () => {
recognizeImage({
// language: 'zh', // 默认为中文
url: '/static/ocr/231846.png', // 支持临时地址,缓存地址。如果是网络地址请先下载。
success(res) {
console.log('识别文本:', res.text)
// console.log('文本块结构:', res.textBlocks)
},
fail(err) {
console.log('识别失败:', err)
}
} as OCRRecognizeOptions) // 非uniappx 不需要强制类型 OCRRecognizeOptions
}
多语言识别
通过设置language参数识别不同语言的文字:
import { recognizeImage } from '@/uni_modules/lime-ocr'
// 识别日语文字
recognizeImage({
language: 'ja', // 鸿蒙和web不支持设置,默认中英
url: '/static/ocr/japanese_text.jpg',
success(res) {
console.log('日语识别结果:', res.text)
}
})
// 识别韩语文字
recognizeImage({
language: 'ko',
url: '/static/ocr/korean_text.jpg',
success(res) {
console.log('韩语识别结果:', res.text)
}
})
// 识别梵文
recognizeImage({
language: 'devanagari',
url: '/static/ocr/devanagari_text.jpg',
success(res) {
console.log('梵文识别结果:', res.text)
}
})
获取结构化结果
处理识别后的结构化数据:
import { recognizeImage } from '@/uni_modules/lime-ocr'
recognizeImage({
url: '/static/ocr/document.jpg',
success(res) {
// 获取完整文本
console.log('完整文本:', res.text)
// 处理结构化数据
const textBlocks = res.textBlocks
textBlocks.forEach((block, blockIndex) => {
console.log(`段落 ${blockIndex + 1}:`, block.text)
block.lines.forEach((line, lineIndex) => {
console.log(` 行 ${lineIndex + 1}:`, line.text)
line.elements.forEach((element, elementIndex) => {
console.log(` 元素 ${elementIndex + 1}:`, element.text)
console.log(` 位置:`, element.bounds)
})
})
})
}
})
快速预览
导入插件后,可以直接使用以下标签查看演示效果:
<!-- 代码位于 uni_modules/lime-ocr/components/lime-ocr -->
<lime-ocr />
插件标签说明
| 标签名 |
说明 |
l-ocr |
组件标签 |
lime-ocr |
演示标签 |
详细配置请参考官方文档:Vue Composition API
API文档
recognizeImage 方法
| 参数 |
说明 |
类型 |
必填 |
| options |
识别选项 |
OCRRecognizeOptions |
是 |
OCRRecognizeOptions 选项
| 参数名 |
类型 |
必填 |
说明 |
| url |
string |
是 |
要识别的图片URL,支持本地路径、临时路径和缓存路径 |
| language |
'zh' | 'ja' | 'ko' | 'devanagari' |
否 |
识别语言类型,默认为中文 'zh' |
| success |
(result: OCRResult) => void |
否 |
识别成功的回调函数 |
| fail |
(error: any) => void |
否 |
识别失败的回调函数 |
OCRResult 结果对象
| 字段 |
类型 |
说明 |
| text |
string |
合并后的完整识别文本 |
| textBlocks |
TextBlock[] |
结构化识别结果(多级结构) |
| errMsg |
string |
结果状态信息 |
TextBlock 文本块结构
| 字段 |
类型 |
说明 |
| text |
string |
段落文本 |
| lines |
Line[] |
行文本数组 |
Line 行结构
| 字段 |
类型 |
说明 |
| text |
string |
行文本 |
| elements |
Element[] |
元素数组 |
Element 元素结构
| 字段 |
类型 |
说明 |
| text |
string |
单词或字符 |
| bounds |
Bounds |
元素在图片中的位置 |
Bounds 位置结构
| 字段 |
类型 |
说明 |
| left |
number |
左边界坐标 |
| top |
number |
上边界坐标 |
| right |
number |
右边界坐标 |
| bottom |
number |
下边界坐标 |
错误码说明
| 错误码 |
说明 |
| 9010001 |
图片加载失败 |
| 9010002 |
文字识别失败 |
| 9010003 |
不支持的语言类型 |
| 9010004 |
路径不存在 |
功能特点
- 支持多种语言识别:中文、日语、韩语、梵文等
- 提供结构化识别结果,包含段落、行、单词等多级结构
- 返回文本元素在图片中的位置信息
- 简单易用的API,降低OCR技术使用门槛
- 适用于多种文字识别场景
常见问题
- 网络图片需要先下载到本地再进行识别
- 图片质量对识别结果有较大影响,建议使用清晰图片
- 不同语言的识别准确率可能有所差异
- 复杂排版的文档识别效果可能不如纯文本理想
支持与赞赏
如果你觉得本插件解决了你的问题,可以考虑支持作者:
| 支付宝赞助 |
微信赞助 |
 |
 |