里飞网

 找回密码
 立即注册
楼主: 阿里兄
打印 上一主题 下一主题

LvglFontTool字体工具更新V0.4版本

  [复制链接]

1

主题

10

帖子

43

积分

新手上路

Rank: 1

积分
43
91#
发表于 2023-12-12 11:08:13 | 只看该作者
阿里兄 发表于 2023-12-12 11:06
就结构体变了一下,这个想一下就能想到了

好的好的,我再去看看,感谢回复
回复

使用道具 举报

0

主题

2

帖子

16

积分

新手上路

Rank: 1

积分
16
92#
发表于 2024-1-9 11:19:22 | 只看该作者
lovemengx 发表于 2021-10-16 11:19
感谢大佬,原因是因为所选的字体不包含中文。按照大佬说的话,带中文至少 1M 以上。大伙如果也有遇到这种 ...

我的字库2MB多,包含了中文,还是显示不出来,系统的自带的中文字库可以,请问这个是什么问题?
回复

使用道具 举报

0

主题

2

帖子

16

积分

新手上路

Rank: 1

积分
16
93#
发表于 2024-1-9 11:33:28 | 只看该作者
附件是我测试的中文字库,帮忙看看有问题,谢谢
回复

使用道具 举报

45

主题

311

帖子

2814

积分

版主

Rank: 7Rank: 7Rank: 7

积分
2814
94#
 楼主| 发表于 2024-1-9 11:34:59 | 只看该作者
yuechaofu 发表于 2024-1-9 11:33
附件是我测试的中文字库,帮忙看看有问题,谢谢

没看到附件,你可以先用内部字体进行测试。
回复

使用道具 举报

45

主题

311

帖子

2814

积分

版主

Rank: 7Rank: 7Rank: 7

积分
2814
95#
 楼主| 发表于 2024-1-9 15:16:09 | 只看该作者

字库是乱码的
回复

使用道具 举报

0

主题

2

帖子

16

积分

新手上路

Rank: 1

积分
16
96#
发表于 2024-3-11 18:20:51 | 只看该作者
你好,我想知道 v0.4 支持阿拉伯语等除了中日韩英文以外的语言吗?我是用 python 脚本写入 0x0-0xFFFF 所有字符,但是工具并不能显示,并且也无法生成;工具是有最大的字符数量限制,还是语言限制?
回复

使用道具 举报

45

主题

311

帖子

2814

积分

版主

Rank: 7Rank: 7Rank: 7

积分
2814
97#
 楼主| 发表于 2024-3-11 18:29:00 | 只看该作者
Juszou 发表于 2024-3-11 18:20
你好,我想知道 v0.4 支持阿拉伯语等除了中日韩英文以外的语言吗?我是用 python 脚本写入 0x0-0xFFFF 所有 ...

这需要看你选的字体支持字符情况;字符多生成也很慢、可以直接生成文件;有部分是双unicode编码的文字可能不支持。
回复

使用道具 举报

0

主题

2

帖子

16

积分

新手上路

Rank: 1

积分
16
98#
发表于 2024-3-11 18:30:57 | 只看该作者
阿里兄 发表于 2024-3-11 18:29
这需要看你选的字体支持字符情况;字符多生成也很慢、可以直接生成文件;有部分是双unicode编码的文字可 ...

比如阿拉伯语,拉丁文,缅甸文,似乎再左边都看不到
回复

使用道具 举报

45

主题

311

帖子

2814

积分

版主

Rank: 7Rank: 7Rank: 7

积分
2814
99#
 楼主| 发表于 2024-3-11 18:47:02 | 只看该作者
Juszou 发表于 2024-3-11 18:30
比如阿拉伯语,拉丁文,缅甸文,似乎再左边都看不到

左边看不到,那就是字体没有这些文字,可以选宋体或微软雅黑试试;
回复

使用道具 举报

0

主题

1

帖子

18

积分

新手上路

Rank: 1

积分
18
100#
发表于 2024-3-15 14:01:34 | 只看该作者
楼主,0.5测试版本里面,还是存在字体大并且字数多的时候转换卡死的情况
回复

使用道具 举报

45

主题

311

帖子

2814

积分

版主

Rank: 7Rank: 7Rank: 7

积分
2814
101#
 楼主| 发表于 2024-4-5 19:19:03 | 只看该作者
sutaojin 发表于 2024-3-15 14:01
楼主,0.5测试版本里面,还是存在字体大并且字数多的时候转换卡死的情况

字体大建议使用0.4版本的XBF格式。
回复

使用道具 举报

0

主题

5

帖子

30

积分

新手上路

Rank: 1

积分
30
102#
发表于 2024-4-7 15:43:04 | 只看该作者
本帖最后由 limhanfeng 于 2024-4-7 15:47 编辑

我采用XBF字体,外部bin文件,放到了linux系统中的flash中,我的LVGL是8.0.0版本,经过烧录后,UI符号和中英文都没有显示,大佬门帮看下会是为何原因呀
修改__user_font_getdata接口实现如下:
  1. char *Font_buff = NULL;

  2. static void init_font(void)
  3. {
  4.         FILE *fileFont = fopen("/mnt/custom/data/Picture/lv_font_siyuansongti_normal.bin", "r");
  5.         if (fileFont == NULL)
  6.         {
  7.                 printf("Failed to open file for reading");
  8.                 return;
  9.         }
  10.         fseek(fileFont, 0, SEEK_END);
  11.         long lFontSize = ftell(fileFont);
  12.         rewind(fileFont);
  13.         Font_buff = (char *)malloc(sizeof(char) * lFontSize);
  14.         fread(Font_buff, 1, lFontSize, fileFont);
  15.         fclose(fileFont);
  16. }

  17. static uint8_t *__user_font_getdata(int offset, int size)
  18. {
  19.         //如字模保存在SPI FLASH, SPIFLASH_Read(__g_font_buf,offset,size);
  20.         //如字模已加载到SDRAM,直接返回偏移地址即可如:return (uint8_t*)(sdram_fontddr+offset);
  21.         static bool bFirstIn = true;
  22.         if (bFirstIn)
  23.         {
  24.                 bFirstIn = false;
  25.                 init_font();
  26.         }
  27.         return (uint8_t*)(Font_buff + offset);
  28. }
复制代码

字体为外部的思源宋体,生成前的设置如下:



回复

使用道具 举报

0

主题

2

帖子

84

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
84
103#
发表于 2024-4-7 15:48:43 | 只看该作者
limhanfeng 发表于 2024-4-7 15:43
我采用XBF字体,外部bin文件,放到了linux系统中的flash中,我的LVGL是8.0.0版本,经过烧录后,UI符号和中英文都 ...

__user_font_getdata中的bFirstIn有问题,init_font也重新定义了一个bFirstIn,这两个都是static属于只对本函数内有效,它们没有任何关系,要换成全局变量,你这C语言不过关啊
回复

使用道具 举报

0

主题

5

帖子

30

积分

新手上路

Rank: 1

积分
30
104#
发表于 2024-4-7 15:54:59 | 只看该作者
admin 发表于 2024-4-7 15:48
__user_font_getdata中的bFirstIn有问题,init_font也重新定义了一个bFirstIn,这两个都是static属于只对 ...

这个我复制错了 重新修改了下 麻烦大佬再看下呗
回复

使用道具 举报

0

主题

2

帖子

84

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
84
105#
发表于 2024-4-7 16:56:00 | 只看该作者
limhanfeng 发表于 2024-4-7 15:54
这个我复制错了 重新修改了下 麻烦大佬再看下呗

使用内部字体是否正常?这种情况基本是读取或BIN文件写到FLASH时有问题。
回复

使用道具 举报

0

主题

5

帖子

30

积分

新手上路

Rank: 1

积分
30
106#
发表于 2024-4-7 17:35:50 | 只看该作者
admin 发表于 2024-4-7 16:56
使用内部字体是否正常?这种情况基本是读取或BIN文件写到FLASH时有问题。

使用内部.c文件是正常的
回复

使用道具 举报

0

主题

5

帖子

30

积分

新手上路

Rank: 1

积分
30
107#
发表于 2024-4-8 09:39:56 | 只看该作者
admin 发表于 2024-4-7 16:56
使用内部字体是否正常?这种情况基本是读取或BIN文件写到FLASH时有问题。

重新试了下,发现使用XBF字体,内部大数组也是同样现象,而使用官网的字体转换是能正常显示的
回复

使用道具 举报

0

主题

5

帖子

30

积分

新手上路

Rank: 1

积分
30
108#
发表于 2024-4-8 15:08:25 | 只看该作者
阿里兄 我用XBF字体,外部bin文件,才10个阿拉伯数字10个英文字符4个汉字,抗锯齿开到4,结果生成的bin文件就有120KB,这正常吗 二进制文件这么大的吗
回复

使用道具 举报

45

主题

311

帖子

2814

积分

版主

Rank: 7Rank: 7Rank: 7

积分
2814
109#
 楼主| 发表于 2024-4-8 21:59:11 | 只看该作者
limhanfeng 发表于 2024-4-8 15:08
阿里兄 我用XBF字体,外部bin文件,才10个阿拉伯数字10个英文字符4个汉字,抗锯齿开到4,结果生成的bin文件就有 ...

XBF格式,是使用你所输入文字中unicode最大值和最小值之间所有字符都会添加到索引,用于快速查表,也就是空间换时间的做法,XBF格式字体适用于有大空间的场景使用。
回复

使用道具 举报

0

主题

3

帖子

30

积分

新手上路

Rank: 1

积分
30
110#
发表于 2024-4-23 13:52:56 | 只看该作者
阿里兄,我LVGL使用V8.3.5版本,使用LvglFontTool_V0.4导出“XBF字体,外部bin文件”使用,
但是卡死在“lv_obj_set_style_text_font(Labal, &RobotoR20, 0);”这句。

请问这是不支持V8以上版本吗??
回复

使用道具 举报

45

主题

311

帖子

2814

积分

版主

Rank: 7Rank: 7Rank: 7

积分
2814
111#
 楼主| 发表于 2024-4-23 14:03:38 | 只看该作者
hjhj7591418 发表于 2024-4-23 13:52
阿里兄,我LVGL使用V8.3.5版本,使用LvglFontTool_V0.4导出“XBF字体,外部bin文件”使用,
但是卡死在“lv ...

很大可能是你读取函数有问题,建议你先使用内部XBF测试一下先,XBF是支持的。
回复

使用道具 举报

0

主题

3

帖子

30

积分

新手上路

Rank: 1

积分
30
112#
发表于 2024-5-21 08:29:53 | 只看该作者
阿里兄 发表于 2021-8-24 23:54
外部XBF字体可以直接支持,内部字体要修改一点点。

//Roboto,,-1
//字模高度:35
//内部字体
//使用排序和二分查表
lv_font_t FNT_R30 = {
    .dsc = &font_dsc,
    .get_glyph_bitmap = __user_font_get_bitmap,
    .get_glyph_dsc = __user_font_get_glyph_dsc,
    .line_height = 35,
    .base_line = 0,
};

还要把__user_font_get_bitmap, __user_font_get_glyph_dsc, 这两个函数换成lv_font_get_glyph_dsc_fmt_txt,lv_font_get_bitmap_fmt_txt, 才行吧???
回复

使用道具 举报

0

主题

1

帖子

14

积分

新手上路

Rank: 1

积分
14
113#
发表于 2024-11-12 18:21:03 | 只看该作者
lovemengx 发表于 2021-10-14 17:47
LZ,我们使用的 LVGL 8.0.0 版本,运行在 Linux 系统中,使用 LvglFontTool V0.4 生成的 XBF 外部 BIN 文件 ...

你好,我遇到了同样的问题,我确定字库加了中文,请问你最后怎么解决的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|里飞网  

GMT+8, 2024-11-23 08:25 , Processed in 0.133035 second(s), 5 queries , File On.

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc. Template By 【未来科技】【 www.wekei.cn 】

快速回复 返回顶部 返回列表