最近幾天編寫手機端的頁面之后,文中需要華文行楷字體,在網上下載后,引入到了自己的前端頁面,以為沒有什么事了,繼續碼代碼
@font-face { font-family:huawen; src: url(./css/華文行楷.ttf); } body{ font-family: huawen; }
最終在測試的時候出現問題了,蘋果手機的用戶,基本看不出來什么問題,安卓測試了一下,頁面打開時原來的字體,隨着進度條的推移,慢慢華文行楷的字體出來了,問題,加載太慢了,看了一下引入的源文件"華文行楷.ttf" 3M,有點大。
方法一:搜索關鍵詞,ttf提取工具(方法失敗)
網上很多都是介紹了Google的一款工具,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
4. 輸出字體在同目錄下。
但是個人根據此方法試了好多次都是失敗告終,同事也試了好多次,不知道原因出現在哪,是輸出了,6k的大小,無論是輸入什么文字。目前還不知道問題出現在哪,如果您看到並且試驗成功的話,歡迎交流一下!
方法二:FontCreator字體編輯軟件
想着以為可以大量輸入,但是想象是美好的,沒有這個功能,需要手動一點點把需要的字體拿出來,是個漫長的過程,這個方法也就排除了
方法三:搜索關鍵詞,壓縮ttf工具
后來轉換了一下思想,既然不能從我的 “華文行楷.ttf”里面提取我需要的字體,我的初衷是變小就行了,那就壓縮唄!這個想法一有,就開始找實現的方法,html網頁引用中文字體,文件過大,加載緩慢的解決辦法【字蛛】 一文吸引了我的注意,文章太長,先操作實現了一下,感覺ok,步驟也不是很長。
1、node -v :安裝完node之后,測試node是否安裝
2、npm config set registry http://registry.npm.taobao.org
3、npm info underscore (如果上面配置正確這個命令會有字符串response)
4、npm –registry http://registry.cnpmjs.org info underscore:命令行指定
5、npm install font-spider –g:安裝字蛛
6、font-spider C:\Users\wangchao\Desktop\index*.html:生成新的字體庫,nodejs 命令行輸入
也就是你的html完整路徑 【*】 是通配符,表示會掃描所有的html文件 ,然后回車
方法四--1127更新:利用現有的在線字體提取工具-https://www.fontke.com/tool/subfont/
致此,壓縮后的會保存在同級目錄下的.font-spider里面,直接用就行了
