我是按照https://club.rt-thread.org/ask/question/8050.html里的
的步骤自建中文字库,没有成功显示,请教大家😂
没有看过你说的文档中步骤建立中文库,但有几个建议给你
(1)他是不是建立的GUI的基础上做屏幕显示的
(2)中文字库是点针显示的,你移植程序中,需要注意它的点阵库在那里,是外部芯片读取的,还是内嵌在代码中的。看了你的截图,因该是外部做好内嵌到代码中的。
(3)显示屏是点阵屏,你需要了解该屏幕的主要寄存器参数,这样对你理解别人的文档有帮助,如果觉得浪费时间,就先直接移植它的全部代码后运行,这个时候看,如果只是没有中文,其它的图形显示都正常,则就查找它的字库位置
(4)中文字库建立后,在显示时,你要看它是16X6 ,还是8X12,或者是32X32,因为不同的点阵,C代码取值方式是不同的。这点特别需要注意,不然你的中文显示就是乱码
老哥这几个思路挺好,字符图形还有里面自带生成的中文字库显示“你好世界”是可以的,所以我想自己生成自己需要用到的中文字库,但发现显示不出来
使用自带的u8g2_font_unifont_t_chinese2 ,有些字没显示出来,是这些字不属于utf8还是这个u8g2_font_unifont_t_chinese2没有包含这个字呢?
可以参考下这个网址的介绍,https://www.freesion.com/article/50161312364/
字体最后要转为UNICODE编码格式,utf8与Unicode在汉字编码上只是一个固定字节编码,一个是变长字节编码
的区别,二者之间争对汉字对象都一样,因此不存在你说的这些字不属于utf8,因该是u8g2_font_unifont_t_chinese2没有包含这些字。你可以试着上面推荐的方式自己建立一个库,将需要显示的汉字包含在该库内就可以了,注意字体库的大小不要超过原来的长度。
谢谢老哥的细心回复 ,解决了,之前可能是某个指令敲错,导致生成unicode编码不对,重新按照这个文档步骤来,最后还是可以显示。
u8g2创建中文字库.pdf