bilibili-视频演示
以下内容
-
使用lv_font_conv制作中文字体文件(nodejs)
-
micropython加载并显示手写中文字体
安装lv_font_conv(前提是先安装nodejs和npm)
npm i lv_font_conv -g
验证是否安装成功
lv_font_conv
转化字体
lv_font_conv --size 20 --format bin --bpp 1 --font muyao.ttf --symbols 哔哩哔哩粉丝 --no-compress -o bilibili_fans.bin
加载字体(定义字体样式名为font_demo)
font_demo=lv.font_load("S:./bilibili_fans.bin")
设置字体样式
label_font_demo.set_style_text_font(font_demo, 0)
修改之前的哔哩哔哩粉丝文案为中文
# 显示粉丝文案
font_demo=lv.font_load("S:./bilibili_fans.bin")
label_fans = lv.label(scr)
label_fans.set_style_text_font(font_demo, 0)
label_fans.set_text("哔哩哔哩粉丝")
label_fans.set_x(120)
label_fans.set_y(135)
并且微调粉丝数x坐标
# 显示粉丝数
label_fans_num = lv.label(scr)
label_fans_num.set_text("0")
label_fans_num.set_x(250)
label_fans_num.set_y(135)
显示效果
到此为止,中文字体设置成功并显示
总结如下:
-
需要NodeJs和Npm为环境前提(本文忽略环境安装)
-
使用npm安装lv_font_conv用来制作中文字体
-
下载需要转换的中文字体文件(本文为沐瑶手写体的ttf文件)
-
指定需要转换的中文字符并使用命令行进行转换
-
把转换成功的bin文件传输到ESP32-S3中
-
使用lv.font_load和set_style_text_font进行字体的加载和显示
转换中文字体文件的方式不只有这一种,还可以直接加载ttf字体文件,下期有空再整理
往期内容
《MicroPython[ESP32-S3]:开启WIFI设置NTP时间同步并显示当前日期和周》
《MicroPython[ESP32-S3]:硬件定时器设置日期刷新文字显示》
《MicroPython[ESP32-S3]:LVGL显示GIF+http request显示哔哩哔哩粉丝计数》
END