对于一个web前端来说,制作一个移动端的H5页面是很简单的,但是对于多样的动画效果、累赘的N多图片以及外部字体的优化问题,就远没有制作那么简单了。这里说一下我对字体文件太大的解决方法。
我们这里使用google的sfntly中的sfnttool.jar对字体文件进行指定文字的提取,以达到字体文件压缩的目的。
先来看一下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 format
输入的命令行:
java -jar sfnttool.jar -s ‘要进行提取的文案‘ 提取前的文件名.ttf 提取后的文件名.ttf
在使用之前,需要配置的事宜如下:
1.jdk,至少1.6+以上版本,记得配置环境变量;
2.ant,java的build工具,点此下载,下载后解压记得配置到环境变量中,这样在项目的cmd中,直接输入ant即可进行java项目的build;
具体build方案:
在cmd中切换到sfntly代码的java目录,然后输入ant就开始build了。build完成后,sfnttool.jar在项目目录的java\dist\tools\sfnttool文件夹下 。
P.S. 只要将要进行文字提取的字体包放在与snfttool.jar文件同级目录下,运行命令行即可在该目录下生成提取后的字体包,简单快捷。
不过,这种方式仅支持使用固定文案的部分,还请各位亲们看好再行实践。