歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux 下思源黑體字體與 Java 之間兼容性問題的解決

Linux 下思源黑體字體與 Java 之間兼容性問題的解決

日期:2017/2/28 13:57:52   编辑:Linux教程

從 Fedora 22 開始,系統自帶思源黑體(Source Han Sans),不再使用文泉驿正黑或微米黑(但仍然可以通過 dnf 在線安裝)。思源黑體采用 OTF 字體格式(Open Type Font),技術上是 TrueType 字體的更為先進的升級版。但經過反復測試發現,Java 對 OTF 字體的支持似乎存在問題。

盡管 Oracle 官方文檔上說從 Java 7 開始已經能夠支持 OTF 字體,比如 createFont 等方法仍然可以用 TRUETYPE_FONT 等參數提供對 OTF 字體的支持,但思源黑體在 Java 程序中顯示漢字會出現方塊,特別是簡體中文語言環境下,字體看似使用的思源黑體台灣香港地區繁體版本,並沒有使用簡體中文版本,一些字顯示不出來,以方塊代替了。

在沒有多余精力去研究字體問題的情況下,目前猜測是因為思源字體以 OTF 格式發布並且內部還存在 Hinting 信息的問題導致 Java 識別存在問題,另外字體的語言編碼可能也是個問題。暫時的替代方法是,最好使用不帶 Hinting 信息的 TTF 字體,比如 XHei、明蘭等社區制作的字體(不含 Hinting 信息),另外建議刪除思源黑體軟件包安裝時自帶的 fontconfig 配置,然後直接修改 fontconfig 中的 65-nonlatin.conf 等文件,自定義你所使用的替代字體的匹配優先級等等。

更多Fedora相關信息見Fedora 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=5

Copyright © Linux教程網 All Rights Reserved