一、开发环境
1. ubuntu下ESP-IDF开发环境(ubuntu仅编译调试,在VS Code中编写代码)
2. lvgl版本8.3.10
3.ESP32芯片型号ESP32-WROOM-32E
二、开发背景
利用ESP32制作智能手表时,需要在1.69寸240*280圆角IPS触摸屏显示中文字符
三、开发过程
1.打开本电脑C:\Windows\Fonts,可以看到很多字体,选择一款自己喜欢的字体
2.复制字体到一个新的文件夹,作为转化文件夹
3.打开LVGL官方文字转换网址https://lvgl.io/tools/fontconverter,配置如下
(Name:输出文件名 size:字体大小 Bpp:字体质量 )
Browse:选择我们刚刚放入文件夹的字体格式
Symbols:粘贴常用7000字通用汉字表
Submit:点击后等待生成font_16.c文件,下载到文件夹中(网页翻译大概8s,耐心等待)
4.将生成的font_16.c加入工程中,目录为./components/lvgl/src/font
注意:修改代码第14行为 "../../lvgl.h" (未修改前为:"lvgl/lvgl")
5.修改配置文件夹
①重命名文件夹:原本是lv_conf_template.h,重命名为lv_conf.h
②使能LV_FONT_FMT_TXT_LARGE :修改代码407行,改0为1
6.调用方法
①定义:LV_FONT_DECLARE(font_16)
②使用:&font_16
7.编译提示(先清理build,再编译)
idf.py fullclean
idf.py build
四、开发效果(基于华文彩云字体格式)