利用Office组件MODI识别图片上的文本 - [技巧攻略]

转载
http://www.blogbus.com/gleisure-logs/236198449.html

  也是网上看到有人利用Microsoft Office的组件“Microsoft Office Document Imaging” (MODI)进行识别图片上的文本,于是我也测试了一下,果然可以。
  测试环境:Windows XP,Microsoft Office 2003
  我是在EXCEL的VBA环境下测试,引用“Microsoft Office Document Imaging 11.0 Type Library”,代码如下: 

  1. Private Sub OCRImageFile(ByVal strName As String)
  2.  Dim objDocument As New MODI.Document
  3.  Dim objImage As New MODI.Image
  4.  objDocument.Create strName
  5.  Set objImage = objDocument.Images.Item(0)
  6.  On Error Resume Next
  7.  objImage.OCR miLANG_CHINESE_SIMPLIFIED, False, False //以中文模式识别
  8.  If Err.Number = 0 Then
  9.   MsgBox objImage.Layout.Text //显示识别的文本
  10.  Else
  11.   MsgBox Err.Description
  12.  End If
  13.  objDocument.Close False
  14.  Set objDocument = Nothing
  15. End Sub

 

  刚开始也与网上的评论一样,在代码第7行会出错“Object hasn't been initialized and can't be used yet”,事实上这是因为OCR组件MODI未完整安装。我是直接在开始菜单找到“Microsoft Office 工具”下的“Microsoft Office Document Imaging”程序,打开后测试一张图片进行识别,便会提示安装OCR功能。之后该错误便能消除。
  对于一些图片提示错误“EP_E_DCOM_OCR_FAILRECOG”,应该是不能正常识别(或者未识别到文本)。

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值