下载地址: LvglFontTool_V0_1.rar
感谢原创作者【阿里】
以下 2019-09-26 22楼 更新
---------------------------------------------------------
0.2版本下载: LvglFontTool_V0_2.rar
lvgl字体工具更新V0.2
1、支持生成lvgl_6.0字体。
2、增加参数保存。
3、内部字体增加字体排序,使用二分查找。
3、增加类似XBF内部字体及XBF外部字体。
作者微信收款二维码:
本软件免费使用,如果用于商业,请支持原作者 @阿里, 毕竟靠爱发出来的电是有限的。
为了这个软件能走得更远, 请支持原创作者。
以下 2020-02-29 更新
---------------------------------------------------------
LvglFontTool_V0_3.7z
离线
gei li !
离线
请问有图片生成的吗?
离线
step by step 里没说清楚怎么把这个.C文件导入到项目啊....是不是很多文件本身很多地方要改的?
最近编辑记录 3038922 (2018-10-13 09:37:46)
离线
好东西,正在考虑用littlevgl,收藏了
离线
好用,收藏了
离线
请教版主 很多字显示不出来是为啥?比如 能 陀螺仪 等等 要设置啥字体?
离线
离线
3038922 说:晕哥 说:请教版主 很多字显示不出来是为啥?比如 能 陀螺仪 等等 要设置啥字体?
检查一下字的编码对不对.
电脑上UTF8 啊.
是我如果用BTNM这个模块去显示 陀螺仪 三个字是可以的.
我用label 这个模块 去显示 陀螺仪三个字 是空白....我也不知道为啥.
离线
离线
3038922 说:晕哥 说:检查一下字的编码对不对.
电脑上UTF8 啊.
是我如果用BTNM这个模块去显示 陀螺仪 三个字是可以的.
我用label 这个模块 去显示 陀螺仪三个字 是空白....我也不知道为啥.那其他的字可以吗?
我现在也遇到类似的问题,用List做了一个文件列表,里面会显示扫描到歌曲文件的名字
问题是其他部分,包括list里的前缀{上一首,下一首,正在播放}都正常,但是歌曲名字只有英文能显示,中文一个字都没有
离线
感谢,这个工具真的是好用撒
离线
好 mark一下
离线
mark
离线
晕哥 说:请教版主 很多字显示不出来是为啥?比如 能 陀螺仪 等等 要设置啥字体?
陀螺仪用 label是能显示出来的,亲测能用,你应该是代码那里没有改好吧,晕哥发的字体生成工具还是挺香的
离线
好东西,谢谢晕哥分享
离线
mark,正好需要
离线
这个工具虽然不能支持6.0 但是5.3上面用还是特别的香,谢谢分享。期待早日增加对6.0版本的支持
离线
也坐等 6.0 版本的
离线
这个工具首发哪里? lvgl 6.0 字体在线转换不会使用,这个工具在 v
5.3 下面很好用
离线
0.2版本下载: LvglFontTool_V0_2.rar
lvgl字体工具更新V0.2
1、支持生成lvgl_6.0字体。
2、增加参数保存。
3、内部字体增加字体排序,使用二分查找。
3、增加类似XBF内部字体及XBF外部字体。
作者微信收款二维码:
本软件免费使用,如果用于商业,请支持原作者 @阿里, 毕竟靠爱发出来的电是有限的。
为了这个软件能走得更远, 请支持原创作者。
离线
膜拜大神~~~~~~~~~~~~~~
离线
ubuntu 版本的有没有阿?
离线
如何生成 Fontawesome图标字体?
离线
好东西,谢谢晕哥分享
离线
是这个。
离线
那你下载对应的矢量字体文件不就可以了吗?
离线
大佬,请问在常用汉字里怎么添加中文的标点符号?
离线
大佬,请问在常用汉字里怎么添加中文的标点符号?
一楼那个左边输入框里面把标点符号都输入不就可以了吗?
离线
vs2019仿真lvgl不能显示中文问题
1.使用工具转换中文字体保存font1.c
2.加载font1.c文件到vs2019环境的工程中
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.调用并运行,只能显示英文
离线
补充问题描述
调试发现英文字符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)函数中
离线
我的VS版本
链接: https://pan.baidu.com/s/1AyMz2A_ppdDIn4a-l40fAQ
提取码:hbyv
我的仿真工程
链接: https://pan.baidu.com/s/1dPu_2JKeGFjmMzJVZ1ZGgA
提取码:xzh7
以下@晕哥 从百度云下载:
--------------------------
vs2019下载安装: VS2019qyb_26992.rar
vs2019工程:lvgl_for_vs2019.7z
离线
问题已解决
加入预编译指令解决的
#pragma execution_character_set("utf-8")
离线
@JamesZhou2020 我也遇到同样的问题,按照你一样的步骤不显示中文,可以正常显示字体里的英文,不进入__user_font_get_bitmap()函数,预编译加指令了,参照工具里的提示(如下)也进行处理了,就是不显示汉字,苦恼中。。。
unicode编码生成的字体怎么用:
1、因本字体使用unicode编码,所以在用到文字的.c文件,需保存为UTF-8编码,可使用记事本打开.c文件,文件另存,选UTF-8编码即可。
2、因.c文件保存为UTF-8编码后,MDK编译可能出错,打开配置工程,切换C/C++选项卡,在Misc Controns里面追加--locale=english即可。
离线
一直用这个软件,使用很方便
离线
很感谢作者开发了这款软件,不过这个软件有个bug,就是在加载宋体 24号字的所有汉字的时候无法正常运行,字号越大,运行异常越多
离线
v03的版本依旧有bug,霞/发,在选择【加入常用汉字GB2312(6763个)】的时候会出现错字,单独输入文字的时候显示正常
离线
非常好用
离线
v1支持 v5版本的, 最新的v3支持v5吗?
离线
一直用这个软件,感谢分享!
离线
v03的版本依旧有bug,霞/发,在选择【加入常用汉字GB2312(6763个)】的时候会出现错字,单独输入文字的时候显示正常
出现错字是怎样的,可以截图看看吗。
离线
很感谢作者开发了这款软件,不过这个软件有个bug,就是在加载宋体 24号字的所有汉字的时候无法正常运行,字号越大,运行异常越多
这是因为文字太多,加入字模数据时几十万行的文本显示在文本框卡死了,你可以先用XBF的,这个是直接写文件的,下版本我改一下,当文本太多时直接写文件就好了
离线
v1支持 v5版本的, 最新的v3支持v5吗?
V5是说LVGL 5.0吗,V0.3版是支持生成LVGL 6.0版本或6.0以下版本,通过选项切换。
离线
阿里兄真的是造福一方啊!niubility!
离线
littlevgl的图片转换工具LvglImgTool
感谢作者制作分享。
离线
谢谢分享
离线
又有新版本了,好东西,感谢分享
离线
好东西,感谢楼主的分享。阿里兄真的是造福一方啊
离线
很实用的工具呢
离线
离线的工具还是比在线的开很多的,感谢楼主,很棒的
离线
@阿里兄,V0.3能转LVGL7.01的字体文件吗?我看了下选择6.0转换后的字体文件,感觉和LVGL7.01库中的字体文件不太一样。
最近编辑记录 zhaoxunren (2020-06-22 17:25:49)
离线
//微软雅黑,Regular,12
//字模高度:27
//内部字体
//使用排序和二分查表
lv_font_t myFont009 = {
.dsc = &font_dsc,
.get_glyph_bitmap = __user_font_get_bitmap,
.get_glyph_dsc = __user_font_get_glyph_dsc,
.line_height = 27,
.base_line = 0,
};
@阿里兄,结构体中的字摸高度和字体字号,有什么对应关系吗?为什么这两个数值相差的比较多?
谢谢。
离线
//微软雅黑,Regular,12
//字模高度:27
//内部字体
//使用排序和二分查表
lv_font_t myFont009 = {
.dsc = &font_dsc,
.get_glyph_bitmap = __user_font_get_bitmap,
.get_glyph_dsc = __user_font_get_glyph_dsc,
.line_height = 27,
.base_line = 0,
};@阿里兄,结构体中的字摸高度和字体字号,有什么对应关系吗?为什么这两个数值相差的比较多?
谢谢。
字号大小和像素大小是什么关系我也不知道,另V0.3版本是支持LVGL 7的
离线
非常不错的工具,给我工作带来很大的用途,谢谢!
离线
正在使用littlevgl
离线
看楼上说0.3版本都出来了,厉害厉害
离线
这个太厉害了,在github上有项目吗
离线
这个太厉害了,刚好可以用在项目里
离线
这个太厉害了,刚好可以用在项目里
这个太厉害了,刚好可以用在项目里
离线
感谢楼主, 这个软件好用.
离线
这个朋友,我现在用vs2019跑V7.20版本的LVGL,用阿里兄的V0.3版本的字体工具生成字库文件来显示中文,结果没有显示中文出来。代码如下:
LV_FONT_DECLARE(myFont_10)
#define LV_THEME_DEFAULT_FONT_NORMAL &myFont_10
#pragma execution_character_set("utf-8")
const char* str1 = "hello长风破浪会有时直挂云帆济沧海";
lv_obj_t* lable_week = lv_label_create(img_bp, NULL);
lv_label_set_text(lable_week, str1);
lv_obj_set_pos(lable_week, 170, 114);
lv_obj_set_style_local_text_color(lable_week, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_BLACK);
lv_obj_set_style_local_text_font(lable_week, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, lv_theme_get_font_normal());
这个执行只显示了hello这个英文,中文没有显示,请教还缺少哪些处理呢?中文字符所在c文件我有转成UTF-8.
离线
@南山
1.不知道你这个LV_THEME_DEFAULT_FONT_NORMAL 的定义是否使用上了,lv_theme_get_font_normal()这个函数你可以直接替换为myFont_10
2.可以尝试直接把这个.c文件整个变为utf-8的编码,我不知道加#pragma execution_character_set("utf-8")的这个东西是否有效,我之前一直不能显示,我都是直接把整个.c文件用notepad++转码为utf-8就行了。
离线
楼主能开源挂到 gitee 或 github 或 gitlab 吗?
离线
vs 工程可以在 Linux 下用 mono 包里面的 xbuild 编译打包到 Linux 下运行。
离线
真的是太棒了,解决了我使用littlevgl的难题
离线
离线
今天试了一下V0.5 有些字不能正常显示 字号一样 显示不一样大?
freetype渲染 16号
取模工具 16号
离线
跟阿里兄请教了下 原来是lv_config里的一个宏没开启导致 之前还真没注意过 开启后正常显示 至于不一样大 是因为freetype是16像素 取模工具是16号 单位不一样
解决方案参考连接
http://dz.lfly.xyz/forum.php?mod=viewthread&tid=34&extra=page%3D1
离线
可以把绘制界面也集成上去就好了。
离线
@南山
请问一下,中文不显示的问题,解决了吗?
我现在也遇到一样的问题了!
发现__user_font_get_bitmap(const lv_font_t * font, uint32_t unicode_letter),发现这个unicode_letter传进来是单字节的值,比如"中"字,传进来应该是0x4E2D,但是打印出来只有0x4E,就显示成字母"N"了!
有没有大神遇到过? 如何解决啊?
离线