Python技术分享unity3D技术分享UGUI

Unity字体精简-FontPruner or FontSubs

2019-03-29  本文已影响4人  好怕怕

最近一直在搞Unity客户端的优化,发现了冷加载界面的字体只用到了指定的文字,但是字体文件很大,内存消耗也很大,必须精简,如何把8M的字体精简到几十K呢?


1、FontSubsetPack使用方便,但是有一定的不足,我选择了FontPruner
2、FontPruner下载地址:https://github.com/yaukeywang/FontPruner/tree/extend
由于是python的源码,需要pycharm运行代码执行,需要安装python和pycharm以及搭建必要的环境。


下载好了以后,打开项目,print输出没有括号,报错 报错

python2.0之前的写法,我安装的python3,所以需要补上()括号,
print("path = " +path),当然删除log也可以。
1、复制需要生成字体源文件到根目录


源字体
2、加入字体文件需要保留的文字到txt中,找到src/FontExtract/unChineseOutPut.txt 在这记事本内填入你要保留的文字 保存
image.png

3、复制命令:FontPruner.py --inputPath=./ --inputFont=./simkai.TTF --tempPath=./
切换到cmd窗口,粘贴命令,修改simkai为你的字体名字,然后回车,开始生成字体


image.png
生成成功
image.png
image.png
大小对比:
image.png

导入到unity开始使用吧,有个小问题就是,其实这个字体也包含了所有的字体,但是不是我们输出的文本里面包含的文字,显示方式还是有很大差别的,具体看下面的图。


image.png
上一篇下一篇

猜你喜欢

热点阅读