轉載自滇狐的個人首頁,對作者表示崇高的敬意
JDK1.4:
Linux 下 Java 的 Swing 預設不能顯示漢字, 網上這方面的介紹很多, 只是似乎都不是很詳細, 因此我覺得還是有必要再把這些陳詞濫調再重複一遍。
首先, 使用 su 命令切換為 root, 再使用 cd 命令切換到你的 JDK 安裝路徑下, 例如, 在我機器上, JDK 安裝在 /usr/java/j2sdk1.4.2_01/
下。
然後, 切換到該目錄下的 jre/lib
目錄下, 將 font.properties
備份一下:
# cd /usr/java/j2sdk1.4.2_01/
# cd jre/lib/
# mv font.properties font.properties.bak
接下來, font.properties.zh_CN.Sun
複製為 font.properties
。 如果你的機器上沒有 font.properties.zh_CN.Sun
, 那應該有“font.properties.zh_CN.別的單詞
”什麼的。 如果都沒有, 那你最好重裝一份更新版本的 JDK。
# cp font.properties.zh_CN.Sun font.properties
最後, 編輯複製得到的 font.properties
檔案, 跳到檔案尾部, 找到“filename.xxx=
”這一行, 將後面的路徑修改為你機器上的 Simsun.ttf 所在的全路徑, 下面的 appendedfontpath
一行也做相應修改, 將路徑指向你的 Simsun.ttf 所在檔案夾。
filename.-Hanyi-HanyiSong-medium-r-normal--*-%d-*-*-c-*-gbk-0=/usr/share/fonts/local/simsun.ttf
appendedfontpath=/usr/share/fonts/local/
JDK1.5(這個不好找阿)
Linux 下 Java 的 Swing 預設不能顯示漢字, 網上對於 JDK 1.4 的中文配置介紹很多, 滇狐的網站也介紹了這方面的內容。 相比之下, 關於 JDK 1.5 的中文配置的相關資料就比較難找了, 滇狐費了不少功夫才配置好了 JDK 1.5 的中文顯示, 現把配置過程詳細敘述如下:
首先, 使用 su 命令切換為 root, 再使用 cd 命令切換到你的 JDK 安裝路徑下, 例如, 在我機器上, JDK 安裝在 /usr/java/jdk1.5.0_05/
下。
然後, 切換到該目錄下的 jre/lib
目錄下, 你會看到該目錄下有許多形如 fontconfig.*.properties.src
的檔案。 選擇一個最接近你的系統的 properties
, 將它複製為 fontconfig.properties
。 例如, 我的系統是 Fedora Core, 因此我就使用 fontconfig.Redhat.properties
:
# cp fontconfig.Redhat.properties.src fontconfig.properties
編輯複製得到的 font.properties
檔案, 將檔案開頭處的 Component Font Mappings
塊中的中文預設字型改為 simsun, 如下:
# Component Font Mappings
allfonts.chinese-cn-iso10646=-misc-simsun-medium-r-normal--*-%d-*-*-c-*-iso10646-1
接著, 在 Font File Names
塊中添加 simsun 的路徑映射, 把以下的路徑改為你機器裡的 SimSun.ttf
所在的路徑:
# Font File Names
filename.-misc-simsun-medium-r-normal--*-%d-*-*-c-*-iso10646-1=/usr/local/share/fonts/simsun.ttf
最後跳到檔案尾部, 將 AWT 的字型搜尋路徑指向相應的目錄:
# AWT X11 font paths
awtfontpath.chinese-tw-iso10646=/usr/local/share/fonts
awtfontpath.chinese-cn-iso10646=/usr/local/share/fonts
awtfontpath.japanese-iso10646=/usr/local/share/fonts
awtfontpath.korean-iso10646=/usr/local/share/fonts