标题: 关于Arduino的U8G2字库的问题 [打印本页]

作者: mengsiu    时间: 2024-3-8 22:40
标题: 关于Arduino的U8G2字库的问题
最近在研究ESP8266,用Arduino IDE编程会更方便。那其中当然会接触到U8G2库。就此,有几个疑问:
①U8G2的编码是怎样的?
以前没有使用U8G2的时候,都是用取模软件为文字取模,这个取模过程很明显能理解得到。
现在,查看U8G2字库的内容,全是另一种看不懂的编码。
那么请问,U8G2是如何的编码规则?
②U8G2有多节省空间?
既然U8G2使用如此复杂的编码方式,那肯定是有他的优势,其中一个必然是节省空间。
那么,相比传统的取模,他能节省多少空间?比如说多少多少比例什么的。
③如何更方便的制作专属的U8G2字库?
官方U8G2库中提供的中文字库有5种,其中GB2312的全字库太大,其他4个又不全,所以需要制作自己的字库。
在网上找了一些操作方法,操作步骤都很繁琐,任何一步做错都会令结果失败,而且不到最后都不知道是否成功。
有没有一些更简便的方法?比如说把输入我想要的文字,简单几步就生成结果。
④为什么制作出来的字效果不好?
如下,是两种方式分别生成出来的效果,其中所使用的字体是同样的字体(宋体)。
使用传统取模方式生成的点阵文字  使用网上方法生成的U8G2文字
可见,左边方式生成的文字笔划清晰,横平竖直;右边方式生成的文字笔划间间距不一,部分笔划还糊成一块,效果没有左边的好。
虽说并不影响正常阅读,但是否有办法可以得到如左图这样的效果呢?

作者: 嗷嗷叫的老马    时间: 2024-11-11 19:53
我可以回复字库的问题,即[问题3].

简单来说,就是使用取模软件把要用的字,生成XBM格式,然后在U8G2中调用drawXBM()方法来绘制即可.

取模软件使用PC2LCD2002,这个软件是免费软件(应该是吧?):

githubcom/fishjump/PCtoLCD2002_exe

使用流程,软件配置,以及示例代码:

https://blog.csdn.net/qq_33593411/article/details/120906466

这样的话,只需要把生成的数组放进去即可,用到哪些字就生成哪些,不需要带那巨大但不全的字库了.





欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1