天天看点

vs2019仿真lvgl vGL显示中文显示"长风破浪会有时\n直挂云帆济沧海"为例

  • 显示"长风破浪会有时\n直挂云帆济沧海"为例

字体在线转换链接

https://littlevgl.com/ttf-font-to-c-array

此例转好的字体文件下载

链接:https://pan.baidu.com/s/1RU0E18fxOdJXV3aegt0OrQ 

提取码:lxtj

vs2019仿真要显示中文还要加上预编译指令,否则不会显示中文

#pragma execution_character_set("utf-8") 
           

中文显示实现

LV_FONT_DECLARE(myFont)
void chinese_test_demo(void) {
    lv_obj_t* label_dl_1;
    static lv_style_t style1;  //style变量不能是局部变量,否则函数退出将销毁,绘制将会不正确
 
    const char *str1= "长风破浪会有时\n直挂云帆济沧海";
    printf("%s\n", str1);
    /*Create a style and use the new font*/
    lv_style_copy(&style1, &lv_style_plain);
    style1.text.font = &myFont;
    style1.text.color = LV_COLOR_RED;
   
    /*Create a label and set new text*/
   
    label_dl_1 = lv_label_create(lv_scr_act(), NULL);
    lv_obj_align(label_dl_1, NULL, LV_ALIGN_CENTER, -80, -20);
    lv_label_set_style(label_dl_1, LV_LABEL_STYLE_MAIN, &style1);
    lv_label_set_text(label_dl_1, str1);


}
           

调用chinese_test_demo函数,编译运行

vs2019仿真lvgl vGL显示中文显示"长风破浪会有时\n直挂云帆济沧海"为例