字体加密解码小工具
假设我们遇到了字体加密下载他的字体,转一个ttf
先把woff2转xml方便取出cmap ,然后吧所有cmap的key拿出来
from fontTools.ttLib import TTFont
from font_parse.font_to_img import font_to_img
woff2_path = "y8dl0-28arr.ttf"
font = TTFont('e26e946d8b2ccb7.woff2')
font.saveXML('font1.xml')
font_map = font.getBestCmap()
print(font_map)
font.close()
unicode_list=[chr(key) for key, _ in font_map.items()]
print(unicode_list)
normal_dict, error_dict = font_to_img(unicode_list, woff2_path)
print(normal_dict)
print(error_dict)
这个key就是字对应的Unicode的码
我们拿到这个码先encode在decode保证编码 统一
先加载字体文件
然后开一个画布,创建绘画对象,配置好大小,在根据这个码和对应的字体文件,在图像中绘制文本
最后使用ocr识别这个图片是什么文字,这个方法有个95%成功率。也算是个懒人解决方案了
from PIL import ImageFont, Image, ImageDraw
from cnocr import CnOcr
import numpy as np
def font_to_img(code_list, filename, ignore_flag=True, score=0.95):
normal_dict = {}
be_padding_dict


255

被折叠的 条评论
为什么被折叠?



