chenhengjin 发表于 2021-8-31 19:23:05

LVGLV8.0.2版本使用LVGL外部字库,无法显示中文

最近使用LVGL的外部字库,将生成的字库bin文件放在TF卡中。然后显示,结果只能显示英文,无法显示中文,请大家帮忙解决以下,谢谢!

结果显示如下:


中文无法显示,请大神解答

阿里兄 发表于 2021-8-31 21:42:04

1、文件没有转换为UTF8编码。
2、未正确设置字体:LV8如下
lv_obj_t *label1 = lv_label_create(scr); /* 创建 label 控件 */
    lv_obj_set_pos(label1,0,0); /* 设置控件的坐标 */
    lv_label_set_text(label1,"里飞网 www.lfly.xyz"); /* 设置文字 */
    lv_obj_set_style_text_font(label1, &myfont1, 0);

chenhengjin 发表于 2021-9-1 10:12:50

阿里兄 发表于 2021-8-31 21:42
1、文件没有转换为UTF8编码。
2、未正确设置字体:LV8如下


阿里兄,我的设备在显示中文时候,16、24、32像素的字体不会错位,但是40及以上的字体中文就会错位,如图,请问您知道是什么原因吗?谢谢

阿里兄 发表于 2021-9-1 10:17:53

chenhengjin 发表于 2021-9-1 10:12
阿里兄,我的设备在显示中文时候,16、24、32像素的字体不会错位,但是40及以上的字体中文就会错位,如 ...

读取数据出错了吧,不建议直接读SD卡,可以读文件到内存。或是存到SPI FLASH中也行。

chenhengjin 发表于 2021-9-2 11:28:26

阿里兄 发表于 2021-9-1 10:17
读取数据出错了吧,不建议直接读SD卡,可以读文件到内存。或是存到SPI FLASH中也行。 ...

已经解决,看这个贴子解决的中文出现乱码

阿里兄 发表于 2021-9-2 11:32:57

chenhengjin 发表于 2021-9-2 11:28
已经解决,看这个贴子解决的中文出现乱码

这个宏确实是要开启的,另外前面你说不能显示中文,是哪里的问题?

chenhengjin 发表于 2021-9-10 10:51:56

阿里兄 发表于 2021-9-2 11:32
这个宏确实是要开启的,另外前面你说不能显示中文,是哪里的问题?

是FreeType字体的问题,我选择simfang.ttf就可以,选择Hei.ttf就不行。不知道啥原因,反正选择simfang.ttf可以用了

阿里兄 发表于 2021-9-10 14:04:35

chenhengjin 发表于 2021-9-10 10:51
是FreeType字体的问题,我选择simfang.ttf就可以,选择Hei.ttf就不行。不知道啥原因,反正选择simfang.tt ...

这是因为你使用的TTF没有中文字体,小于1MB的TTF基本是不带中文的
页: [1]
查看完整版本: LVGLV8.0.2版本使用LVGL外部字库,无法显示中文