ttf字体剥离优化概述

发表于2019-08-01
评论0 4.1k浏览

1.目前我们一款游戏常用字体如下所示:

jm5AQM945CDH2OFZdLAH.png

这里主要介绍下字体剥离精简优化字体大小的操作,这个也是比较方便实用的。另外一款游戏常用字体也是根据白名单去生成的。

 

2.源字体查看

这里我用的是FontCreator,拖入KR_NORMAL.ttf查看如下:

Am54aKgfPgasMohFT4fF.png

上面显示的 Glyphs 定义是8112个。看了下里面很多是不用的,应该是可以剥离。

 

3.源字体剥离准备

这里我选用的是FontPruner,感觉比较清晰方便,命令行调用更方便工具化。工具不多介绍自行查看。

把源字体放到FontPruner根目录,编辑src\FonyExtract\unChineseOutPut.txt,我们可以在里面输入白名单字体,供后面从源字体文件里剥离处理。

添加测试字体配置

ANqfMH1QWdbkaIYjGQfd.png

 

4.源字体剥离

我们这里只尝试ttf的,其他格式暂未亲测。上面准备好后,执行脚本需Python环境,开始执行FontPruner.py脚本。因为该脚本要穿指定参数,建议用bat包一层方便执行。

1kEw02Z07taYZ1V72UVr.png

成功执行后在根目录output目录下会生成新的剥离好的字体。

如果你修改了白名单配置,比如删除了某些字不想下次生成出来,那么要记得把intermediate目录下的ChineseOutPut.txt先删除或清空,否则下次生成后删掉的内容还是会在字体里!

 

5.剥离后字体查看

zTtxSpfUHQjq5N3wvSVf.png

显示的 Glyphs 定义是56个,其中包括白名单字体配置的文本,还有一些其他的应该是系统预留,暂未深究。

 

6.剥离字体unity里测试

 

UyrVkqhzPplMc3H5AoEN.png

7.拓展

要如何用到实际项目?重点在如何做工具去提取涉及到的文本,UI静态文本、配置文本等等。

  • 允许他人重新传播作品,但他人重新传播时必须在所使用作品的正文开头的显著位置,注明用户的姓名、来源及其采用的知识共享协议,并与该作品在磨坊上的原发地址建立链接
  • 可对作品重新编排、修改、节选或者以作品为基础进行创作和发布
  • 不可将作品进行商业性使用
  • 需在以作品基础上创作的演绎作品上适用相同类型的知识共享许可条款

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引

标签: