您尚未登录。

#3 Re: 计算机图形/GUI/RTOS/FileSystem/OpenGL/DirectX/SDL2 » 分享一个好用的 littlevgl / lvgl 字体生成工具. 作者 @阿里 » 2020-03-01 08:13:52

补充问题描述
调试发现英文字符hello都能显示,也调用了 const uint8_t * __user_font_get_bitmap(const lv_font_t * font, uint32_t unicode_letter)函数,
但是紧接着的中文字符   
  长风破浪会有时\n直挂云帆济沧海
没有进入到 const uint8_t * __user_font_get_bitmap(const lv_font_t * font, uint32_t unicode_letter)函数中
issue.png

#4 Re: 计算机图形/GUI/RTOS/FileSystem/OpenGL/DirectX/SDL2 » 分享一个好用的 littlevgl / lvgl 字体生成工具. 作者 @阿里 » 2020-02-29 23:20:44

vs2019仿真lvgl不能显示中文问题
1.使用工具转换中文字体保存font1.c
1_20200229-2314.png
2.加载font1.c文件到vs2019环境的工程中
3.png
3.测试代码如下

LV_FONT_DECLARE(myFont)
void chinese_test_demo(void) {

   static  lv_obj_t* label_dl_1, * label_dl_2;
    static lv_style_t style1, stylel2;
    char* str = "Ambiq Micro";
   // char* str1 = L"andy for compile\nAmbiq Micro";
    char *str1= "hello长风破浪会有时\n直挂云帆济沧海";

    /*Create a style and use the new font*/
    lv_style_copy(&style1, &lv_style_plain);
    style1.text.font = &myFont;
    style1.text.color = LV_COLOR_BLACK;

    /*Create a style and use the new font*/
    lv_style_copy(&stylel2, &lv_style_plain);
    stylel2.text.font = &lv_font_roboto_28;
    stylel2.text.color = LV_COLOR_BLACK;

    /*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, 0, 0);
    lv_obj_set_pos(label_dl_1, 100, 60);
    lv_label_set_style(label_dl_1, LV_LABEL_STYLE_MAIN, &stylel2);
    lv_label_set_text(label_dl_1, str);

    label_dl_2 = lv_label_create(lv_scr_act(), NULL);
    //    lv_obj_align(label_dl_2, NULL, LV_ALIGN_CENTER, 0, 0);
    lv_obj_set_pos(label_dl_2, 10, 130);
    lv_label_set_style(label_dl_2, LV_LABEL_STYLE_MAIN, &style1);
    lv_label_set_text(label_dl_2, str1);

}
 

4.调用并运行,只能显示英文
test.png

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn