對於一個web前端來說,製作一個移動端的H5頁面是很簡單的,但是對於多樣的動畫效果、累贅的N多圖片以及外部字體的優化問題,就遠沒有製作那麼簡單了。這裏說一下我對字體文件太大的解決方法。
文章鏈接:使用sfntly中的sfnttool.jar提取中文字體 (附送ant版下載包)
我們這裏使用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文件同級目錄下,運行命令行即可在該目錄下生成提取後的字體包,簡單快捷。
不過,這種方式僅支持使用固定文案的部分,還請各位親們看好再行實踐。