vb调用office OCR识别组件

============程序1

Option Explicit
'
'
利用微软OCR控件, 只需要不到10行代码就能够实现自已的OCR文字识别软件.
'
1. 添加控件,需要安装office2003, 没有安装office2003的可以从别人机子上拷贝相关文件,注册regsvr32.exe mdivwctl.dll,
'
控件一般在这个目录下:C:\Program Files\Common Files\Microsoft Shared\MODI.0, 只需要相关的几个文件就可以了, 此文件夹全部文件大概在21M左右.
'
2.工程->部件->添加这个控件:Microsoft Office Document Imaging 11.0 Type Library


'OCR的主要功能
Private Function OCRImageFile(ByVal strName As String) As Boolean
   
 Dim miDoc As Object
   
   
    
 '初始化并加载文档
    Set miDoc = CreateObject("MODI.Document")            '创建对象
   
    miDoc.Create App.Path
 & "\1.bmp"                       '加载图片文件
   
    Screen.MousePointer
 = vbHourglass                    '设置光标忙
   
   
 '识别
    Err.Clear
    miDoc.Images(
0).OCR 2052, True, True
    Text1.Text
 = miDoc.Images(0).Layout.Text
   
    OCRImageFile
 = True
  
End Function

Private Sub Command1_Click()
   
 Dim bolP As Boolean
    bolP
 = OCRImageFile(App.Path & "\1.bmp")
End Sub

===================== 程序2

Option Explicit
'
'
利用微软OCR控件, 只需要不到10行代码就能够实现自已的OCR文字识别软件.
'
1. 添加控件,需要安装office2003, 没有安装office2003的可以从别人机子上拷贝相关文件,注册regsvr32.exe mdivwctl.dll,
'
控件一般在这个目录下:C:\Program Files\Common Files\Microsoft Shared\MODI.0, 只需要相关的几个文件就可以了, 此文件夹全部文件大概在21M左右.
'
2.工程->部件->添加这个控件:Microsoft Office Document Imaging 11.0 Type Library


'OCR的主要功能
Private Function OCRImageFile(ByVal strName As String) As Boolean
   
 Dim modiDocument As New MODI.Document
   
 Dim modiImages As New MODI.Images
   
 Dim modiImage As New MODI.Image
   
 Dim modiLayout As New MODI.Layout
   
 Dim ImageCount As Integer
   
   
 Dim i As Integer
    modiDocument.OCR miLANG_CHINESE_SIMPLIFIED,
 False, False
  
   
 Set modiImage = modiDocument.Images
   
   
   
 For i = 0 To ImageCount
       
 Set modiImage = modiImages.Item(i)
       
 Set modiLayout = modiImage.Layout
        Text1.Text
 = modiLayout.Text
   
 Next i
   
    modiDocument.Close
 False: Set modiDocument = Nothing
   
   
 If ImageCount > 0 Then
        OCRImageFile
 = True
   
 Else
        OCRImageFile
 = False
   
 End If
End Function

Private Sub Command1_Click()
   
 Dim bolP As Boolean
    bolP
 = OCRImageFile(App.Path & "\1.bmp")
End Sub

 

发布了20 篇原创文章 · 获赞 27 · 访问量 26万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览