Skip to content

LimeOcr 文字识别组件

一个功能强大的文字识别组件,支持多语言识别和结构化结果返回。可用于图片文字提取、文档扫描、名片识别、表格识别等多种场景。组件提供了简单易用的API,使开发者能够方便地在应用中集成OCR功能,提升用户体验。

文档链接

📚 组件详细文档请访问以下站点:

安装方法

  1. 在uni-app插件市场入口 中搜索并导入lime-ocr
  2. 导入后在页面引入相关方法
  3. 需要自定义基座才能使用

代码演示

基础用法

识别图片中的文字并获取结果:

js
// 非 uniappx 不需要导入类型 OCRRecognizeOptions
import { recognizeImage, type OCRRecognizeOptions } from '@/uni_modules/lime-ocr'

const onClick = () => {
  recognizeImage({
    // language: 'zh', // 默认为中文
    url: '/static/ocr/QQ20250312-231846.png', // 支持临时地址,缓存地址。如果是网络地址请先下载。
    success(res) {
      console.log('识别文本:', res.text)
      // console.log('文本块结构:', res.textBlocks)
    },
    fail(err) {
      console.log('识别失败:', err)
    }
  } as OCRRecognizeOptions) // 非uniappx 不需要强制类型 OCRRecognizeOptions
}

多语言识别

通过设置language参数识别不同语言的文字:

js
import { recognizeImage } from '@/uni_modules/lime-ocr'

// 识别日语文字
recognizeImage({
  language: 'ja',
  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)
  }
})

获取结构化结果

处理识别后的结构化数据:

js
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)
        })
      })
    })
  }
})

快速预览

导入插件后,可以直接使用以下标签查看演示效果:

html
<!-- 代码位于 uni_modules/lime-ocr/components/lime-ocr -->
<lime-ocr />

插件标签说明

标签名说明
l-ocr组件标签
lime-ocr演示标签

详细配置请参考官方文档:Vue Composition API

API文档

recognizeImage 方法

参数说明类型必填
options识别选项OCRRecognizeOptions

OCRRecognizeOptions 选项

参数名类型必填说明
urlstring要识别的图片URL,支持本地路径、临时路径和缓存路径
language'zh' | 'ja' | 'ko' | 'devanagari'识别语言类型,默认为中文 'zh'
success(result: OCRResult) => void识别成功的回调函数
fail(error: any) => void识别失败的回调函数

OCRResult 结果对象

字段类型说明
textstring合并后的完整识别文本
textBlocksTextBlock[]结构化识别结果(多级结构)
errMsgstring结果状态信息

TextBlock 文本块结构

字段类型说明
textstring段落文本
linesLine[]行文本数组

Line 行结构

字段类型说明
textstring行文本
elementsElement[]元素数组

Element 元素结构

字段类型说明
textstring单词或字符
boundsBounds元素在图片中的位置

Bounds 位置结构

字段类型说明
leftnumber左边界坐标
topnumber上边界坐标
rightnumber右边界坐标
bottomnumber下边界坐标

错误码说明

错误码说明
9010001图片加载失败
9010002文字识别失败
9010003不支持的语言类型
9010004路径不存在

功能特点

  • 支持多种语言识别:中文、日语、韩语、梵文等
  • 提供结构化识别结果,包含段落、行、单词等多级结构
  • 返回文本元素在图片中的位置信息
  • 简单易用的API,降低OCR技术使用门槛
  • 适用于多种文字识别场景

常见问题

  • 网络图片需要先下载到本地再进行识别
  • 图片质量对识别结果有较大影响,建议使用清晰图片
  • 不同语言的识别准确率可能有所差异
  • 复杂排版的文档识别效果可能不如纯文本理想

支持与赞赏

如果你觉得本插件解决了你的问题,可以考虑支持作者:

支付宝赞助微信赞助

源代码

组件源码