背景:
最近折腾ESP32显示项目,用的micropython语言,使用的1.9寸SPI显示屏苦于没有字库,便使用PC端的汉字取模软件,但软件每次取字模很麻烦,要事先预计好需要取得所有字符,取出来后还要进行预处理以便micropython调用,很不方便。后来发现网上有现成的各类字库文件,但这些字库文件来源各异、种类繁多,有的是按行取值、有的又是按列取值,有的是汉字和汉字字符分开、有的是汉字和汉字字符合并在一个字库文件的,有的是剔除了不可显示字符、有的又没有剔除等等,而且大多都是转载的、收集的。调用方法描述不清(主要是偏移值),鉴于此,本人原创制作了如下micropython专用字库(其他编程语言也可以参照调用),此字库具有以下特点:
1、每个字库包含95个ascii、6763个中文以及93个中文符号,不区分ascii和中文汉字及字符,统一接口直接调用。示例在HZK.py。
2、调用接口采取了两种方式:一、使用RAM缓存映射区数据,速度最快,但是RAM会占用大概27KB左右,适合带PSRAM的ESP32。二、使用二分法查找数据,速度也快,但相对于方法一慢一点,但节省RAM开支,适合没有PSRAM的ESP32设备。
3、本字库的获取的点阵数据与其他PC汉字取模软件获取的数据一致。
4、字库现有12x12汉字(包含acsii 6x12)、16x16汉字(包含acsii 8x16)、24x24汉字(包含acsii 12x24)、32x32汉字(包含acsii 16x32),其他大小的字库后续持续更新。
字库文件结构如下:
字库读取性能测试:
附免费下载地址:https://download.youkuaiyun.com/download/weixin_42169081/88509369