OCR OneNote
文章地址:https://www.cnblogs.com/Charltsing/p/OneNoteOCR.html
前段时间有人问我能不能通过OneNote扫描图片,并返回文本。经过几天的测试,以及对网上若干个代码的测试,写了一个OneNote 2013下的OCR导入导出工具。
在测试的时候,发现OneNote 2013 提供的API还是有一些问题的,总结如下:
1、OneNote 2013务必升级到最新版,否则调用API的时候,可能会发生异常。本人目前的版本是15.0.4787.1000简体中文版。
2、扫描的语言支持中文和英文,简体版当然默认使用中文识别,但貌似没有办法修改默认语言。也许只能通过修改控制面板中的语言及地区才可以。
3、通过OneNote API做扫描步骤也不复杂,一般都是三~四步,
onenoteApp.CreateNewPage 建立新page
onenoteApp.UpdatePageContent 加入图片的base64数据
onenoteApp.GetPageContent 从返回的XML里面提取OCR Data文本
onenoteApp.DeleteHierarchy 删除新建的page
4、有一些需要注意的问题:
OneNote扫描图片功能如果没有禁用的话,是自动进行的,而且不能获知什么时候识别完毕。只能通过延时语句来估计时间。
onenoteApp.DeleteHierarchy 不太可靠,有的时候没有删除新建的page。建议增加Dispose删除多出来的page(通过title识别即可)
OneNote的DLL不支持嵌入资源,所以不同版本的OneNote需要引用不同的DLL,这可能会给程序的发布带来一些问题。
下图是OneNote2010的识别结果
OneNote2013识别情况要略好些。
***************************************************************************************
最后我把这个OCR封装到了XLL里面,给Excel vba调用,方便批量识别图片文本,并存入Excel。VBA调用代码如下:
实操参考:https://blog.csdn.net/cy_2000000/article/details/52983058
最新文章
- 【目录】python
- java使用jsch连接linux
- 微信小程序的两个BUG?
- springmvc请求参数异常处理
- BZOJ3695 滑行
- UITextField swift
- MyBatis学习总结_10_批量操作
- if语句代码优化
- TesserOCR训练
- hdu 4300(kmp)
- js搜索框 js仿百度搜索 js下拉框 jQuery.Autocomplete使用
- spring framework 各版本源码下载地址
- WCF 生产json对外的接口
- android的intent打开系统程序
- Draggable(拖动)组件
- ORM框架Hibernate (一) 对DAO封装和抽象
- webapp之路--之query media
- 修改windows user 文件夹中的用户名
- iframe刷新
- 使用IntelliJ IDEA和Maven管理搭建Web开发环境(以Spring MVC为例)(一)
热门文章
- C语言代码复习笔记:第二章
- 性能测试工具——Mxdperfstat
- android studio开发的时候出现design editor is unavailable until after a successful project sync问题的解决方法
- Spring MVC中使用errors标签
- iOS MessagePack
- python网络爬虫 - 设定重试次数内反复抓取
- Window10中创建目录连接点
- ActiveMQ 基于zookeeper的主从(levelDB Master/Slave)搭建以及Spring-boot下使用
- Maven的JAR包仓库,不用再百度搜JAR包了!
- MVC+WCF框架下广告位管理——文件上传