最近一个需求是创建电子收据的Barcode和OCR。关于创建OCR字符的文章在国内很少出现,大部分内容都是关于打印机出错,需导入ocr.ttf字体。但是目前我面临的问题是显示ocr.ttf字体在pdf上,所以这里总结最近实现这个功能的过程。
一、OCR扩展
1.1 前言
OCR技术是光学字符识别的缩写(Optical Character Recognition),是通过扫描等光学输入方式将各种票据、报刊、书籍、文稿及其它印刷品的文字转化为图像信息,再利用文字识别技术将图像信息转化为可以使用的计算机输入技术。“OCR”位代表“光学字符识别”。“A”是字母表中的第一个字母;这告诉您,奥尔- a是第一个为OCR目的定制开发的字体。(oc - b是第二个!)
光学字符识别与磁读非常不同!图像扫描器(或检查阅读器)捕捉纸质文档的图像(或检查)——我们称之为“扫描”。在这一点上,被扫描的图像只不过是一个无意义的密集点云在一个更轻的背景上。OCR软件从图像中“提取”文本,识别形状并分配字符。因此,纸质文档无需重新输入就可以转换成计算机数据! OCR-a程序字体是根据ANSI INCITS 17-1981 (R2002)(前身为ANSI X3.17-1981 (R2000))创建的。USPS兼容性是通过使用9pt IDAutomationOCRa字体实现。欧元银行和德国的银行支票可以用欧元-a程序字体打印,这种字体包括用于打印欧洲银行支票的椅子、叉、钩和欧元等特殊符号。大小为1的IDAutomationOCRa字体(支票schriften)应该用于打印德国银行支票。
下表列出了这些独特字符的位置:
1.2 安装及导出OCR字体
1.2.1 Windows安装OCR
下载网址:https://www.wfonts.com/font/ocr-a
下载完后拖住OCRAExtended.ttf文件到C:\Windows\Fonts,会自动安装。
点击"查找字符",找到需要的字体Unicode码,Unicode码可直接于Jaspersoft中使用。
1.2.2 Jaspersoft安装OCR
OCR字体依赖于ttf文件,考虑到java代码开发,需生成一个jar包导入lib中创建依赖包。
①选择Window-》Preperences
②导入ttf文件