我想使用Inconsolata字體在 tty 控制台中,但我需要psf
為此產生一種字體。
我發現有兩個工具應該可以工作,otf2bdf
但是bdf2psf
每次我嘗試使用第二個工具時,我都會得到:
/usr/bin/bdf2psf: Inconsolata12.bdf: the width is not integer number.
答案1
我實際上正在嘗試解決這個同樣的問題。我透過閱讀不久前發生的這個線程電子郵件交流來解決這個問題。訪問這裡。
我還需要嘗試一下。如果我讓它工作,我會報告。
編輯:我能夠創建 PSF 字體,但尚未嘗試將其用作 TTY 字體。我相信這就是問題的含義。這是我創建字體的方式(準直接從連結複製)。
將 OTF 轉換為 BDF
otf2bdf -r 72 -p 12 -c C /usr/share/fonts/truetype/incon...a/inconsolata.otf | sed -e "s/AVERAGE_WIDTH.*/AVERAGE_WIDTH 80/" > inconsolata-12.bdf
(需要 sed 調用,因為 bdf2psf 健全性檢查 AVERAGE_WIDTH 屬性而不是字體邊界框,或檢查它實際使用的字形的 DWIDTH)
將 BDF 檔案轉換為 PSF 檔案:
bdf2psf inconsolata-12.bdf /usr/share/bdf2psf/standard.equivalents \ /usr/share/bdf2psf/required.set+/usr/share/bdf2psf/useful.set 256 inconsolata-12.psf
就是這樣。