用Python生成定製字體文件

在網頁的製作中,某些地方比如標題用到了諸如方正蘭亭黑這樣的特殊字體,而這些字體在訪問網頁的操作系統中往往是沒有的,爲了能正確顯示字體,通常有兩種做法,一種是將標題以圖片形式保存,另外一種是在打開網頁的時候,通過網絡加載字體文件。這兩種做法都會增加網頁的大小,耗費網絡帶寬。最好將原有的字體文件裁剪一下,做成一個只包含這幾個文字的子集,然後再通過網絡加載這個縮小後的字體文件,就能大大節省網絡傳輸量。
Github上有一個開源的Python工具fonttools可以解決這個問題。
安裝fonttools

pip install fonttools

可以命令行方式執行:

pyftsubset aaa.ttf --font-number=12 --text='你好' --output-file=xxx.ttf

也可以嵌入到代碼中:

from fontTools import subset

options = subset.Options() # dir(options)
font = subset.load_font('font.ttf', options)
subsetter = subset.Subsetter(options)
subsetter.populate(text = 'Google')
subsetter.subset(font)
options.flavor = 'woff'
subset.save_font(font, 'font.woff', options)

還可以通過點擊以下的鏈接,在線直接生成。
在線生成壓縮WOFF2字體文件

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章