要在单片机内自由显示文字,必须准备相应的字库。之前也发文介绍过:
在esp32(esp8266) 提供软字库显示中文的解决方案_esp32中文字库-优快云博客
包括已经开源的项目:
https://github.com/StarCompute/tftziku
这种字体获取思路是:把GB2312字符集输出到一块画布上,然后获取画布的像素点,依照像素点的值解析成0或者1。单片机的输出类似如下:

对于字符的显示基本没有问题,但是如果你仔细看就会察觉到这里面有瑕疵:
“2”显示不完整,3的显示不标准。
造成这一问题的原因是因为字符被输出到画布的时候都会边缘模糊,每个像素都是RGB的,哪怕我们使用的字体颜色是纯黑black也同样有这个问题,所以在实际生成这个字库的时候使用了某个值来判断,例如:
if dotpix[0] > 90 and dotpix[1] > 90 and dotpix[2] > 90:
# img.getpixel()
ss += " 1"
chars += "1"
else:

最低0.47元/天 解锁文章
9913

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



