中文字型一直以來都是執行效率的殺手,在以前PC時代,額外安裝的字型檔案將會大幅度的降低載入與執行效率。在手持式裝置有限的處理能力上,安裝額外的中文字型也會降低載入與執行效率,為了降低效率上的損失,減少字型中的文字是可用的選項之一,因為中文字型檔案中可能存在上萬個中文字型,減少字型可提高載入速度,因此末學實作了這個工具搭配FontForge來刪減App中用不到的字型。程式可於此處下載,此工具末學亦有開放原始碼,原始程式碼可在Github中找到。

為達到上述的目的,我們希望這個程式只要放入App中有用到的中文字型,其他的中文字不要引入,所以這個程式必須要能讀取我們有使用到的文字,程式執行起來如下圖所示,其中[選擇檔案]按鈕點選後,可以多選文字檔案,[選擇目錄]按鈕選取目錄後,將遞回地讀取目錄內的檔案與目錄。

每次選取與比對後的結果將輸出在下方的文字編輯框內,編輯框內相同的字只會出現一次,且按照Unicode的字碼排序過,可在框內刪減或增加文字。

執行畫面

 

最後,在輸出命令稿後,我們需要FontForge來完成最後的步驟,在FontForge中的完整執行流程如下:

  1. 使用FontForge開啟您要使用的字型檔案。
  2. FontForge中點選[File] -> [Execute Script] -> [FF] -> [Call] 並選取輸出的命令稿。
  3. FontForge中點選 [File] -> [Generate Fonts] -> 字型選擇TrueType或您的執行環境容許使用的格式 -> [Generate] -> 輸入字型檔案的檔名 -> 完成。

 

註:在指定檔案時,若令程式讀取到非文字檔內容,可能造成無法預期的輸出結果。