当前位置: 首页 > news >正文

用一个label控件随便显示一些字(用矢量字库),然后用anim动画动态设置lable位置

用一个label控件随便显示一些字(用矢量字库),然后用anim动画动态设置lable位置

全体保证ttf文件要有效!!!有些ttf文件在歌词控件上可以用,但是在这里不能用请注意!

static void anim_x_cb(void * var, int32_t v) {lv_obj_set_x((lv_obj_t *)var, v);
}
static void my_fun_2590(void){printf("进入my fun 2590\n");// 分配 RAM 并拷贝字体lv_ft_info_t info = {0};info.name = "storage/sd0/C/sub1.ttf";info.weight = 64;                      // 字号info.style = FT_FONT_STYLE_NORMAL;     // 样式,可选FILE *fp = fopen("storage/sd0/C/sub1.ttf", "rb");if(!fp) {printf("❌ 字体文件不存在或无法打开\n");return;} else {printf("✅ 字体文件能打开\n");fclose(fp);}// 初始化 FreeType 字体if(lv_ft_font_init(&info) != LV_RES_OK) {printf("字体初始化失败\n");return;}printf("lv_ft_font_init end\n");// info.font 就是生成的 lv_font_t 指针printf("info.font = %p\n", info.font);lv_obj_t * label = lv_label_create(lv_scr_act());lv_label_set_text(label, "测试文本ABC123");lv_obj_set_style_text_font(label, info.font, 0);lv_obj_set_pos(label, 10, 10);lv_anim_t a;lv_anim_init(&a);lv_anim_set_var(&a, label);lv_anim_set_exec_cb(&a, anim_x_cb);lv_anim_set_values(&a, 0, 200);lv_anim_set_time(&a, 1000);lv_anim_set_playback_time(&a, 1000);lv_anim_set_repeat_count(&a, LV_ANIM_REPEAT_INFINITE);lv_anim_start(&a);
}
int main(){while (storage_device_ready() != true) os_time_dly(3);lv_timer_t *t3 = lv_timer_create(my_fun_2590, 1000, NULL);lv_timer_set_repeat_count(t3, 1);  // 只执行1次
}

http://www.lryc.cn/news/624611.html

相关文章:

  • Read Frog:一款开源AI浏览器语言学习扩展
  • JVM 面试精选 20 题
  • 项目中如何分配资源,以避免资源分配不均
  • 【Linux操作系统】简学深悟启示录:进程状态优先级
  • 电子元器件-电容终篇:基本原理、参数解读、电路作用、分类及区别、应用场景、选型、降频及实战案例
  • 如何在服务器 clone github 项目
  • openEuler系统备份与恢复方法
  • 8.18决策树
  • B站 韩顺平 笔记 (Day 22)
  • 芋道审批流配置流程表单超详细介绍
  • 《清华级防护,了解一下?》
  • 龙石数据中台 V3.7.1 升级 | 一站式完成数据可视化
  • 【案例分享】AI使用分享|如何运用 GPT完成小任务并提升效率 —— Prompt 与案例整理
  • CentOS 7.9 部署 filebrowser 文件管理系统
  • ES入门教程
  • Mysql实战案例 | 利用Mycat实现MYSQL的读写分离
  • Linux 服务:RAID 级别解析与 mdadm 工具实操指南
  • 【OLAP】trino安装和基本使用
  • 功能测试相关问题
  • Linux 编译器 gcc 与 g++
  • 代码随想录算法训练营四十五天|图论part03
  • llamafactory使用qlora训练
  • 无人设备遥控器之操控信号精度篇
  • unity实现背包拖拽排序
  • 【机器人-基础知识】ROS2常用命令
  • 第一阶段C#基础-15:面向对象梳理
  • 论往返之迴响:时间之织锦与信息之曼舞
  • 第三十二天(并发)
  • 如何在VS Code中使用Copilot与MCP服务器增强开发体验
  • 【C++】 using声明 与 using指示