编码
LVGL支持两种编码,分别是 ASCII 编码和UTF-8 编码 。
ASCII 编码只支持英文字符的显示 。
UTF-8 编码 可以支持全球所有字符的显示 , 包括显示中文 , 显示图标字体等。
字体
LVGL默认支持多种字体,其中就包括中文字体。但是LVGL自带的中文字体库并不包括所有常用字。
内部字体库
LVGL内部的字体库在 lvgl/src/lv_font 文件夹中。如果需要使用某种字体,只需要把lv_conf.h中该字体的宏定义打开就行。
//内部中文字体库
define LV_FONT_SIMSUN_16_CJK 1 /*1000 most common CJK radicals*/
外部字体库
1、生成字体文件
使用外部字体库首先要使用工具生成字体文件。这里使用的是LvglFontTool。
工具会直接生成一个 .c 文件,直接复制到工程中使用即可。
2、使用字体库
将生成的文件复制到工程后,通过添加样式的方式即可使用字体。
extern lv_font_t myFont;
lv_style_set_text_font(&style, LV_STATE_DEFAULT, &myFont);
注意:
1、除了extern外也可以使用LVGL的宏声明自定义的字体库。
例如:LV_FONT_DECLARE(myFont)
2、生成的文件复制到工程后需要修改文件中 lvgl 的头文件路径。