LVGL如何让字库内部的LV_SYMBOL_BATTERY_FULL图片旋转、放大,我试过使用img控件不行,label标签行吗?能不设置大字体就在原来的基础上让图片放大旋转。

LVGL如何让字库内部的LV_SYMBOL_BATTERY_FULL图片旋转、放大,我试过使用img控件不行,label标签行吗?能不设置大字体就在原来的基础上让图片放大旋转。

1 个赞

可以通过修改这两个样式实现:

 lv_obj_set_style_transform_angle(obj, 150, 0);        /*15 deg*/
 lv_obj_set_style_transform_zoom(obj, 256 + 64, 0);   /*1.25x*/
1 个赞
lv_obj_t *label = lv_label_create(tile1);
lv_obj_set_style_bg_color( label, lv_color_hex(0xfd221a), LV_STATE_DEFAULT );
lv_obj_set_style_text_color( label, lv_color_hex(0x4ae24a), LV_STATE_DEFAULT );
lv_obj_set_style_transform_angle(label, 20, 0);
lv_obj_set_style_transform_zoom(label, 256 + 64, 0);
lv_label_set_text(label,LV_SYMBOL_BATTERY_FULL );
lv_obj_set_style_text_font( label,&lv_font_montserrat_24,LV_STATE_DEFAULT);
lv_obj_set_pos(label, 170, 170);
![image 642x125](upload://fVGRyjCQvRbJTJw1HHmIZdumhsB.png)
我的电池图标消失了

你的LVGL是什么版本呢?

8.2旋转得用画布才能实现

8.3就可以了,你看下文档

lv_obj_t *label = lv_label_create(tile1);
lv_obj_set_style_bg_color( label, lv_color_hex(0x0078d7), LV_STATE_DEFAULT );
lv_obj_set_style_text_color( label, lv_color_hex(0xe73414), LV_STATE_DEFAULT );
lv_obj_set_style_transform_angle(label, 150, 1);
lv_obj_set_style_transform_zoom(label, 256 + 64, 1);
lv_label_set_text(label,LV_SYMBOL_BATTERY_FULL );
// lv_obj_set_style_text_font( label,&lv_font_montserrat_14,LV_STATE_DEFAULT);
lv_obj_set_pos(label, 75, 35);
没有用呀大哥

我的是版本V8.3也不行