• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

SilkTest高级进阶系列1-用textract来识别文本

发布: 2011-4-06 09:35 | 作者: 不详 | 来源: 领测软件测试网采编 | 查看: 15次 | 进入软件测试论坛讨论

领测软件测试网

  SilkTest高级进阶系列1-用textract来识别文本   软件测试

  在以前的文章中,我简单介绍过如何使用silktest中的OCR功能识别界面或者是bmp图片上的文字内容。也提到过silktest自带一个ocr识别的pattern库,该库可以识别windows下的某些字体。不过这些字体都是常见的字体,种类有限,对于某些特殊的字体,默认是无法识别的。下面是一个例子。

  在做这个例子之前,我们需要一些准备工作:

  打开word,在里面输入如下一行文字,并将其字体设置为Bell MT,字体大小为18。然后对该行文字抓屏并将其存为bmp文件c:\ocr\new.bmp

  Auto Test: SilkTest 2006

  调用下面的silktest代码来尝试识别该bmp文件上的文字:

  [-] testcase OCR_Font() appstate none

  [ ] int iRet // return value

  [ ] string sText // text

  [ ] string sBmp = "c:\ocr\new.bmp"

  [ ] iRet = OcrGetTextFromBmp (sText, sBmp)

  [ ] print(sText)

  其运行结果只会打印一个冒号:,这表明默认的textract pattern库无法识别Bell MT字体,我们必须创建一个支持Bell MT字体的pattern库才行。下面就是完成这一任务的一些步骤:

  1.首先我们需要备份silktest目录下面的textract pattern库文件sgOcrPattern.pat和配置文件textract.ini

  2. 打开textract.ini,在Include1一行的最后面加上你希望支持的字体名称,用逗号结束,注意不要在字体名称和逗号之间有任何空格,看上去应该像是...,Arial Narrow,Bell MT,

  3.保存对textract.ini的修改

  4.在silktest目录下面运行ExGUI.exe,点击"Build font pattern database"按钮,在新打开的对话框中点击OK,这个时候该工具会帮你扫描系统中的字体库,并且根据textract.ini所作的设置来生成可用的新pattern库,等待该扫描完成后,你会发现sgOcrPattern.pat的时间戳被更新了。

  5.再次运行上面的测试用例OCR_Font(),它将调用新的pattern库来识别bmp图片上的文字,这次它就能够打印出正确识别的结果Auto Test: SilkTest 2006了。

  

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网