« 兩岸字體上的差異性 | Main | GNU/Linux mozilla/firefox 的列印 »
在 X Window System 下的點陣字規格是 bdf/pcf,這兩種其實是一樣的,只不過 pcf 是經過編碼壓縮,是二位元檔,檔案可能會比較小,載入的時候效率也會比較好。bdf 的話是純文字檔,可以使用一般的文字編輯器就可以編修。
bdf 的規格,我們可以在此下載:
http://partners.adobe.com/public/developer/en/font/5005.BDF_Spec.pdf
我們使用的工具是 xmbdfed,他可以從 X server 或沒有載入的 TrueType 字型來載入後,轉出所指定的 size 的 bdf 字型。這個 bdf 就可以使用 bdftopcf 來轉換成 pcf 檔,然後經過 gzip 的壓縮就可以拿來使用了。
把做好的 yourfont.pcf.gz 置於 X font path 路徑可達之處,執行:
mkfontdir xset fp rehash之後就可以使用了。
就這麼簡單。當然,有些轉出來的點陣字,覺得不滿意的話,也是可以利用 xmbdfed 來載入後自行編修成自己滿意的形狀。
請問 bdf format的 SWIDTH是要做什麼呢? SWIDTH是如何計算呢?
SWIDTH 一般上的認知上就是換算過後的 character/glyph width。而 DWIDTH 則是精確的 pixel width。
我對 pdf 格式不是很熟悉。據我所知,pdf 格式將來會漸漸的被淘汰。據我所知,像目前的 X 就不取用 SWIDTH 的值。而且,將來的 X 有可能不再使用 pdf 字型。
如果你需要精確的計算方法,可能要看你是用在什麼地方,這個請教 Werner LEMBERG 可能會比較清楚。
wl_AT_gnu dot org
非常感謝回答,所以如果我要讀取 bdf字型檔做轉換的動作,
SWIDTH的值我可以忽略它,
我只需要知道ENCODING、BBX、BITMAP,這些就足夠了,謝謝!
Well,我好像把 bdf 打成 pdf 了。@@
據我所知 SWIDTH 的值的確是可以忽略的。除非有些程式碼,他就是要這個不精確的 SWIDTH(一些老舊程式有可能)。
| « | 八月 2010 | » | ||||
|---|---|---|---|---|---|---|
| 一 | 二 | 三 | 四 | 五 | 六 | 日 |
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 | 31 | |||||