【说明】
游戏中经常需要用到各种字体,但是网上下载的TTF字体文件最小也有好几兆,要是游戏中需要用到几种字体,那简直不能忍。
通常情况下,我们会用BMFont代替TTF字体,BMFont也有着很多的优势,但是缺点也很明显,每次修改都要美工的配合,而且不支持字号改变(不考虑缩放)。
那么有没有办法能把TTF字体文件变小点呢?答案是肯定的,除了用FontCreator那种累死人不偿命的东西之外,这里介绍一个简单实用的工具。
【介绍】
sfnttool 是谷歌开源项目 sfntly 内置的工具,他的作用是从一个字体文件中提取指定的文字,导出的字体中将只包含你需要的文字。
【下载】
http://download.csdn.net/detail/ldpjay/8822587
1. 确保你的电脑已经安装了Java环境(能运行Java命令),这是必须的。
2. 命令行进入到sfnttool所在目录下。(一个小技巧,在当前文件夹里按住Shift再右键,里面有个“在此处打开命令行”。)
3. 输入下面的命令即可:
java -jar sfnttool.jar -s '这是一段测试文字' msyh.ttf msyh_simplify.ttf
sfnttool.jar说明如下:
java -jar sfnttool.jar -h subset [-?|-h|-help] [-b] [-s string] fontfile outfile prototype font subsetter -?,-help print this help information -s,-string string to subset -b,-bench benchmark (run 10000 iterations) -h,-hints strip hints -w,-woff output woff format -e,-eot output eot format -x,-mtx enable microtype express compression for eot format4. 输出字体在同目录下。
【链接】
>> 谷歌sfntly开源项目:
https://code.google.com/p/sfntly/
>> 中文字体其实也可以用在网页上的:
http://hxgdzyuyi.github.io/blog/chinese-subset.html
>> cjk-subsetter项目:
https://github.com/hxgdzyuyi/cjk-subsetter