LVGL学习2--label+中文显示

label标签

void lv_100ask_demo_course_3_1_1(void)
{
    char *temp = "#0000ff 1023QW# #ff00ff ERTY# #ff0000 asdfghjklzxcvbnm#";//需要设置宽,否则不会自动换行
    
    lv_label_t *label = lv_label_create(lv_scr_act());
    lv_obj_set_style_width(label, 1000, 0);
    lv_obj_set_style_height(label, 40, 0);
    
/**< LV_LABEL_LONG_WRAP,            /**< 保持对象宽度,将过长的线条换行并扩展对象高度*/
/**< LV_LABEL_LONG_DOT,             /**< 文字太长,请保留大小,并在末尾写点*/
/**< LV_LABEL_LONG_SCROLL,          /**< 保持大小并来回滚动文本*/
/**< LV_LABEL_LONG_SCROLL_CIRCULAR, /**< 保持大小并循环滚动文本*/
/**< LV_LABEL_LONG_CLIP,            /**< 保持大小并剪掉文本*/
    lv_label_set_long_mode(label, LV_LABEL_LONG_WRAP);//设置标签的显示模式

    //设置文本的颜色
    lv_obj_set_style_text_color(label, lv_color_hex(0x6190fe), 0);
    
    //设置背景的颜色,注意需要设置背景透明度,默认全透明
    lv_obj_set_style_bg_color(label, lv_color_hex(0xc53f34),0);
    lv_obj_set_style_bg_opa(label,100,0);

	//设置渐变颜色开启,通过#0000ff output#可设置某个字体的独立颜色
    lv_label_set_recolor(label, true);
    lv_label_set_text(label, temp);//显示的文本
    
    //与printf很像
    lv_label_set_text_fmt(label, "%s:\n%d", "#0000ff output#", 10);//是printf用法一致
}

中文显示
1、使用默认的字库

使用前需要将字库的打开在这里插入图片描述

void lv_100ask_demo_course_3_1_2(void)
{
    /* 创建一个基础对象 label */
    lv_obj_t * label = lv_label_create(lv_scr_act());
    // 使用内置的 cjk 字库
    lv_obj_set_style_text_font(label, &lv_font_simsun_16_cjk, 0); 
    // 显示文字(注意当前文件文本的编码格式,要使用 utf-8 编码)
    lv_label_set_text(label, "测试abcd123.,<>';'[]ABCD");             
}

2、使用外部的字库
在百问网上下载开源的字库
在这里插入图片描述
字体转化软件
在这里插入图片描述

void lv_100ask_demo_course_3_1_2(void)
{
    /* 创建一个基础对象 label */
    lv_obj_t * label = lv_label_create(lv_scr_act());                           
    LV_FONT_DECLARE(lv_han_sans); // 		需要时限声明外部字库
    lv_obj_set_style_text_font(label, &lv_han_sans, 0);   // 使用自定义的字库
    lv_label_set_text(label, "你abcd123.,<>';'[]ABCD");   // 显示文字(注意当前文件文本的编码格式,要使用 utf-8 编码)
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值