Re: [J2SE] Un*x中Swing GUI中文亂碼解決方法
※ 引述《tonytonyjan (南洋大兜蟲)》之銘言:
: JavaHome 是各位jdk的安裝路徑,我這裡是/usr/local/diablo-jdk1.6.0
: $ mkdir fallback
: 此資料夾代表存放擴充字型的地方
: 接下來就是把想要的字型,看是用複製的或是symbolic link,方到fallback目錄下
: 這時可以運用find /usr/local -name *.ttf 來尋找
: 以下拿我的當例子
: $ find /usr/local -name "*.ttf"
: 發現/usr/local/lib/X11/fonts有很多字型
: 其中有一個資料夾叫TTF裡面有個"文鼎PL中楷",這是我要的
: $ cd /usr/local/lib/X11/fonts/TTF
: $ ln -s ln -s *.ttf /usr/local/diablo-jdk1.6.0/jre/lib/fonts/fallback/
: 這樣就完成了,之後只要在main的開頭加上以下程式碼(或寫在constructor),凡是SwingGUI(JLabel, FileChooser...etc)從此就都能正常顯示中文了,祝各位使用愉快^^:
: Font f = new Font("文鼎PL中楷",Font.PLAIN,12);
不需要自己指定字形才對. 不然別人寫的 gui 程式要怎麼解決中文方塊酥的問題呢?
弟查了一下,原來自己先前PO過的文章沒在這個版 orz
http://www.ptt.cc/bbs/LinuxDev/M.1162116470.A.43D.html
簡單地說,
您應該在 fallback 複製好字形後,跑一下 mkfontscale
產生 fonts.scale 檔
[qrtt1@qrtt1-laptop fallback]$ cat fonts.scale
14
wqy-zenhei.ttc -misc-wenquanyi zen hei-medium-r-normal--0-0-0-0-p-0-ascii-0
wqy-zenhei.ttc -misc-wenquanyi zen
hei-medium-r-normal--0-0-0-0-p-0-cns11643-1
wqy-zenhei.ttc -misc-wenquanyi zen
hei-medium-r-normal--0-0-0-0-p-0-cns11643-2
wqy-zenhei.ttc -misc-wenquanyi zen
hei-medium-r-normal--0-0-0-0-p-0-cns11643-3
wqy-zenhei.ttc -misc-wenquanyi zen
hei-medium-r-normal--0-0-0-0-p-0-gb18030.2000-0
wqy-zenhei.ttc -misc-wenquanyi zen
hei-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
wqy-zenhei.ttc -misc-wenquanyi zen
hei-medium-r-normal--0-0-0-0-p-0-iso10646-1
wqy-zenhei.ttc -misc-wenquanyi zen hei-medium-r-normal--0-0-0-0-p-0-iso8859-1
wqy-zenhei.ttc -misc-wenquanyi zen hei-medium-r-normal--0-0-0-0-p-0-iso8859-5
wqy-zenhei.ttc -misc-wenquanyi zen
hei-medium-r-normal--0-0-0-0-p-0-jisx0208.1983-0
wqy-zenhei.ttc -misc-wenquanyi zen
hei-medium-r-normal--0-0-0-0-p-0-jisx0208.1990-0
wqy-zenhei.ttc -misc-wenquanyi zen
hei-medium-r-normal--0-0-0-0-p-0-jisx0212.1990-0
wqy-zenhei.ttc -misc-wenquanyi zen hei-medium-r-normal--0-0-0-0-p-0-koi8-e
wqy-zenhei.ttc -misc-wenquanyi zen
hei-medium-r-normal--0-0-0-0-p-0-ksc5601.1987-0
將這些內容附加在 jre/lib/fonts/fonts.dir 檔案內
就會在找不到適當字形時,自動 fallback 成您設定的中文字形
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.224.172.36
推
03/31 23:57, , 1F
03/31 23:57, 1F
討論串 (同標題文章)