取得字體的包含文字

為什麼要學這個?

可以知道某個字體檔定義了那些文字,進行知道缺字是否有缺字,及之後要先補那些字進去。

下面提供2個範例:

  • 範例1: 取得 fontforge 專案下的文字清單.
  • 範例2: 取得某一個目錄下, 以 unicode 為命名的文字清單.

前置作業

使用前,需要先安裝FontForge,把要處理的字體先存成.sfdir 的資料夾格式。

FontForge執行檔下載:
https://fontforge.org/en-US/

Max腳本檔案下載:
https://github.com/max32002/MaxFontScripts/blob/master/get_ttf_chars.py


使用方法

get_ttf_chars.py --input font_forge.sfdir --output charset.txt

參數說明:

  • --input 參數,Font Forge 的 .sfdir 資料夾路徑。.sfdir 可以省略, 程式會自動增加, 輪入必需是一個已存在的 font forget project 目錄.
  • --output 參數,用於輸出的文字檔.
  • --mode 參數,預設值是 “fontforge”, 針對 fontforge 的專案檔做處理, 使用參數 –mode=unicode_image 可以取得使用 unicode 編碼的數字的圖片.

操作範例1:取得 fontforge 專案下的文字清單.

get_ttf_chars.py --inpuut source.sfdir

使用範例:由於沒有指定輸出的文字檔, 預設會產生 source.txt 文字檔,裡面記錄 source.sfdir 有定義的文字。


操作範例2:取得某一個目錄下, 以 unicode 為命名的文字清單.

get_ttf_chars.py --input sp --mode=unicode_image

執行結果:

input: sp
output: charset_sp.txt
charset length: 73

結果說明: 輸入資料夾名稱: sp, 輸出檔名 charset_sp.txt, 內容長度: 73個字.


相關文章: