无忧启动论坛

 找回密码
 注册
搜索

求助精简chs_boot.ttf字体。

查看数: 2137 | 评论数: 36 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2024-7-1 18:46

正文摘要:

如贴恳切求助。因此chs_boot.ttf字体乃PE进桌面之前显示中文必须之文件。而此字体体积占用3M多,显示中文的页面看起来不需要这样多的字符,因本人能力有限,在此求助,恳请有能力者帮忙,感谢!因原生此字体过大 只 ...

回复

wc006 发表于 2024-7-17 00:05:22
把要保留的文字打字写出来,具体都是哪几个字,能复制和粘贴的那种,不要图片或截图。
wc006 发表于 2024-7-15 12:57:19
本帖最后由 wc006 于 2024-7-15 20:23 编辑

把要保留的文字打字写出来,具体都是哪几个字,能复制和粘贴的那种,不要图片或截图。
wc006 发表于 2024-7-15 12:56:44
本帖最后由 wc006 于 2024-7-15 12:59 编辑

1.你都需要保留哪几个字?列出清单,2.然后查询他们的unicode编码。
3.然后就可以精简了,可以试试。

点评

你好,麻烦你了 我需要这张图片上的字体 这张图片应该少了一个倒计时。  详情 回复 发表于 2024-7-15 15:24
狼人72105 发表于 2024-7-14 15:58:46
wc006 发表于 2024-7-14 15:45
找到可行的方法了:
1、使用FontForge提取和嵌入TTF字体中的点阵字体,网上有教程,就是把ttf文件导出成bd ...

可以不可以做一个成品出来 我测试一下看看呢?
wc006 发表于 2024-7-14 15:45:04
本帖最后由 wc006 于 2024-7-14 15:59 编辑

找到可行的方法了:
1、使用FontForge提取和嵌入TTF字体中的点阵字体,网上有教程,就是把ttf文件导出成bdf
2、然后在现有bdf文件基础上,从现有字体创建一个子集,该子集仅包含实际显示才用到的的字符。
3、我找到了一种在半自动的基础上在FontForge中创建现有字体的子集的方法。
关键是使用Fontforge的脚本功能。我使用互联网服务(请参阅下面的链接)来获取我在书中使用的所有字符的unicode。看起来像这样的“\uc6d0\uc22d\uc774\uac1c\ubbf8\uacf0\ubc8c\ub3cc\uace0\ub798”(下面代码要替换掉这些)
我获取了服务的输出,并使用了Notepad++的“搜索和替换”功能来获取脚本的以下结构:

SelectMore("uc6d0")
SelectMore("uc22d")
SelectMore("uc774")
SelectMore("uac1c")
SelectMore("ubbf8")
SelectMore("uacf0")
SelectMore("ubc8c")
SelectMore("ub3cc")
SelectMore("uace0")
SelectMore("ub798")
它只是反复调用相同的函数: SelectMore()。此函数选择作为参数传递的字形,而不会清除任何先前的选择。还要注意,该脚本假定fontforge正在运行并已打开字体文件。 (链接到fontforge脚本帮助,请参见下文)。
要在Fontforge中直接执行脚本,请从主菜单中选择“文件->执行脚本...” ,粘贴脚本并点击运行。
现在,所有使用的字形都被选中,所有未使用的字形都被取消选择。在主菜单中,单击“编辑->选择->反转选择” 以选择所有未使用的字形。现在,我们可以在主菜单中运行“编码->分离并删除字形” 来删除所有选定的(未使用的)字形。现在将字体另存为新字体将得到所需的子集。
4、把精简得到的两个24和30的bdf格式再嵌入ttf文件。应该就可以了。
其他参考:
删除ttf字体文件中无用文字https://blog.csdn.net/qq_32228265/article/details/120525130

点评

可以不可以做一个成品出来 我测试一下看看呢?  详情 回复 发表于 2024-7-14 15:58
狼人72105 发表于 2024-7-13 15:53:40
2011medp7060 发表于 2024-7-13 07:28
可以直接编辑字体,删掉不需要的

不知道怎么操作?
2011medp7060 发表于 2024-7-13 07:28:28
可以直接编辑字体,删掉不需要的
狼人72105 发表于 2024-7-3 14:18:45
waltz1 发表于 2024-7-3 11:28
求伯君和老雷一定会这个,之前我同学C语言往单片机写点阵字库,几百个常用字
现在win矢量,双字 ...

不认识两位大佬哪!
狼人72105 发表于 2024-7-3 11:19:19
真没人能精简这玩意吗?
szwp 发表于 2024-7-2 15:16:24
狼人72105 发表于 2024-7-2 14:52
不可能吧,单字体的话大约是3.5M 加了双份 ISO壳大了8M 怎么会只占了一份空间呢?

先不用ISO,解压到U盘练习
狼人72105 发表于 2024-7-2 14:52:51
szwp 发表于 2024-7-2 14:31
是二份,但只占一份空间,指向相同簇。

不可能吧,单字体的话大约是3.5M 加了双份 ISO壳大了8M 怎么会只占了一份空间呢?
szwp 发表于 2024-7-2 14:31:40
狼人72105 发表于 2024-7-2 13:38
不行,这个文件必须是,boot一份,EFI一份,已经测试过了,缺少其一,Bios,UEFI两种启动中就有一种不显示 ...

是二份,但只占一份空间,指向相同簇。
狼人72105 发表于 2024-7-2 13:38:46
szwp 发表于 2024-7-2 12:57
可以试试二份文件占一份空间

不行,这个文件必须是,boot一份,EFI一份,已经测试过了,缺少其一,Bios,UEFI两种启动中就有一种不显示中文。
szwp 发表于 2024-7-2 12:57:07
狼人72105 发表于 2024-7-2 11:43
试过了,这个更不行。

可以试试二份文件占一份空间
狼人72105 发表于 2024-7-2 11:43:23
szwp 发表于 2024-7-2 10:46
FontSubsetGUI试过了么

试过了,这个更不行。
szwp 发表于 2024-7-2 10:46:33
FontSubsetGUI试过了么
狼人72105 发表于 2024-7-2 08:54:01
laozhao 发表于 2024-7-2 08:52
刚用FontForge打开看了下,这个字体文件不是通常的轮廓线矢量字库,而是24和30两套点阵字库,也能显示出来
...

好吧。。。
laozhao 发表于 2024-7-2 08:52:46
刚用FontForge打开看了下,这个字体文件不是通常的轮廓线矢量字库,而是24和30两套点阵字库,也能显示出来

FontForge应该是能精简处理的,但是我不会用这个软件,帮不上忙
财源茂盛 发表于 2024-7-2 08:19:48
提示: 作者被禁止或删除 内容自动屏蔽
财源茂盛 发表于 2024-7-2 08:19:33
提示: 作者被禁止或删除 内容自动屏蔽
财源茂盛 发表于 2024-7-2 08:19:14
提示: 作者被禁止或删除 内容自动屏蔽
财源茂盛 发表于 2024-7-2 08:18:57
提示: 作者被禁止或删除 内容自动屏蔽
2011Yuer 发表于 2024-7-2 02:54:59
yyz2191958 发表于 2024-7-1 18:58
这个可能难度很大

听君一席话 如听一席话
wxinchun92 发表于 2024-7-2 00:01:47
试试这个,常用7千多个字

chs_boot.7z

26.76 KB, 下载次数: 10, 下载积分: 无忧币 -2

评分

参与人数 1无忧币 +2 收起 理由
yyz2191958 + 2 赞一个!

查看全部评分

狼人72105 发表于 2024-7-1 22:22:02
kuer 发表于 2024-7-1 22:02
试试

这个启动显示乱码,刚测试。
kuer 发表于 2024-7-1 22:02:30
本帖最后由 kuer 于 2024-7-1 22:19 编辑

试试

狼人72105 发表于 2024-7-1 21:58:33
asky800 发表于 2024-7-1 21:45
用FontCreator打开发现这个字体是空白的?

估计要有专门的字体工具才能精简?

是的。。。难以置信。
ynifcp12 发表于 2024-7-1 21:52:50
来看看~顶一下

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-28 02:57

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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