32浏览
查看: 32|回复: 0

[K10教程] K10官方micropython_unihiker_k10固件支持中文显示的方法

[复制链接]
本帖最后由 湘里人 于 2024-12-25 15:16 编辑

k10官方Micropython固件支持lvgl图形库,但对中文显示支持不是很好,现分享制作中文字库和显示中文的方法。

LVGL介绍
LVGL(轻量级和多功能图形库)是一个免费的开源图形库,提供创建具有易于使用的图形元素、美观的视觉效果和低内存占用的嵌入式 GUI 所需的一切。


一、字库制作
在线字库制作工具:https://lvgl.io/tools/fontconverterK10官方micropython_unihiker_k10固件支持中文显示的方法图1

字库下载:思源宋体字库下载附件my_font_16.zip将字库文件上传到K10
K10官方micropython_unihiker_k10固件支持中文显示的方法图4
二、代码

  1. from unihiker_k10 import screen
  2. import time, gc
  3. import lvgl as lv
  4. import fs_driver, math
  5. # 注册文件系统
  6. fs_drv = lv.fs_drv_t()
  7. fs_driver.fs_register(fs_drv, 'S')
  8. # 初始化屏幕
  9. screen.init(dir=2)
  10. scrn = lv.screen_active()
  11. scrn.set_style_bg_color(lv.color_hex(0x000000), 0)
  12. # 加载中文字体
  13. # 字体文件名为'my_font_16.bin',并且已经放置在ESP32的文件系统中
  14. # font_cn = lv.font_load('S:my_font_16.bin')  #font_load不可用
  15. font_cn = lv.binfont_create("S:my_font_16.bin")
  16. if font_cn == None:
  17.     print("字体加载失败")
  18. else:
  19.     print("字体加载成功")
  20. label_title = lv.label(scrn)
  21. label_title.set_text("行空板K10是一款专为快速体验和学习人工智能而设计的开发学习板,100%采用国产芯片,知识产权自主可控,符合信息科技课程中编程学习、物联网及人工智能等教学需求。该板集成LCD彩屏、WiFi蓝牙、摄像头、麦克风、扬声器、RGB指示灯、多种传感器及丰富的扩展接口。凭借高度集成的板载资源,教学过程中无需额外连接其他设备,便可轻松实现传感器控制、物联网应用以及人脸识别、语音识别、语音合成等人工智能项目。")
  22. label_title.set_width(230)
  23. label_title.align(lv.ALIGN.TOP_LEFT, 8, 60)
  24. label_title.set_style_text_font(font_cn, 0)  # 设置中文字体
复制代码
K10官方micropython_unihiker_k10固件支持中文显示的方法图3






您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4 备案

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail