是否可以使用Tesseract-OCR从命令行或使用API获取识别的字符的字体,即是Arial还是Times New Roman。
我正在扫描可能具有不同字体的不同部分的文档,拥有此信息将很有用。
根据nguyenq 的 回答,我编写了一个简单的 python 脚本,用于打印每个检测到的字符的字体名称。此脚本使用 python 库tesserocr。
from tesserocr import PyTessBaseAPI, RIL, iterate_level
def get_font(image_path):
with PyTessBaseAPI() as api:
api.SetImageFile(image_path)
api.Recognize()
ri = api.GetIterator()
level = RIL.SYMBOL
for r in iterate_level(ri, level):
symbol = r.GetUTF8Text(level)
word_attributes = r.WordFontAttributes()
if symbol:
print(u'symbol {}, font: {}'.format(symbol, word_attributes['font_name']))
get_font('logo.jpg')
Run Code Online (Sandbox Code Playgroud)
Tesseract具有可WordFontAttributes在ResultIterator类中定义的API 函数。
| 归档时间: |
|
| 查看次数: |
3658 次 |
| 最近记录: |