linux下jvm中文字體支持說明

#echo $LANG  //顯示OS當前的語言
#env | grep LANG

#LANG=zh_CN.GB18030  //設置語言
#export LANG  //使設置生效


//修改/etc/sysconfig/i18n 中的環境變量"LANG"爲 "LANG=zh_CN.GB18030",此文件OS啓動時自動加載
#vi /etc/sysconfig/i18n

LANG="zh_CN.GB18030"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.GB18030:zh_CN:zh"
SYSFONT="lat0-sun16"
SYSFONTACM="8859-15"


# DISPLAY=:0.0
# export DISPLAY

# startx   //啓動X window服務,需要linux安裝Gnome或KDE中的任意一種

 

步驟:
1. 複製字體文件 .ttf
2. 修改 fonts.dir(ttmkfdir、mkfontdir),添加字體
3. 修改 font.properties.zh_CN


//拷貝中文字體到jvm的字體目錄下
# cp /usr/share/fonts/zh_CN/TrueType/zysong.ttf  ${JAVA_HOME}/jre/lib/fonts/

/usr/share/fonts/zh_CN/TrueType/ 爲OS的字體目錄

# cd ${JAVA_HOME}/jre/lib/fonts/

# ttmkfdir > fonts.dir  //由ttmkfdir命令生成字體調用的對照表
# mkfontdir //mkfontdir命令根據當前目錄下的 .ttf 文件生成 fonts.dir(Redhat AS3上)


${JAVA_HOME}/jre/lib/fonts/font.properties  此文件是JVM的字體屬性文件
${JAVA_HOME}/jre/lib/fonts/font.properties.zh_CN

http://java.sun.com/j2se/1.3/docs/guide/intl/fontprop.html的說明,JVM按以下順序搜索字體屬性文件,尖括號是JVM檢測的系統屬性:

font.properties.<language>_<region>_<encoding>.<osVersion>
font.properties.<language>_<region>_<encoding>
font.properties.<language>_<region>.<osVersion>
font.properties.<language>_<region>
font.properties.<language>_<encoding>.<osVersion>
font.properties.<language>_<encoding>
font.properties.<language>_<osVersion>
font.properties.<language>
font.properties.<encoding>.<osVersion>
font.properties.<encoding>
font.properties.<osVersion>
font.properties


# vi fonts.dir

zysong.ttf -misc-ZYSong18030-medium-r-normal--0-0-0-0-p-0-ascii-0
zysong.ttf -misc-ZYSong18030-medium-r-normal--0-0-0-0-c-0-gb18030.2000-1 //下面要用的此字體
zysong.ttf -misc-ZYSong18030-medium-r-normal--0-0-0-0-c-0-gb2312.1980-0
zysong.ttf -misc-ZYSong18030-medium-r-normal--0-0-0-0-c-0-gbk-0
zysong.ttf -misc-ZYSong18030-medium-r-normal--0-0-0-0-c-0-iso10646-1 //下面要用的此字體


# vi ${JAVA_HOME}/jre/lib/fonts/font.properties.zh_CN

serif.0=-b&h-luxi serif-medium-r-normal--*-%d-*-*-p-*-iso8859-1
serif.1=-misc-zysong18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1

.......


# XFontSet Information
#
fontset.serif.plain=/
-b&h-luxi serif-medium-r-normal--*-%d-*-*-p-*-iso8859-1,/
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0

修改爲:

# XFontSet Information
#
fontset.serif.plain=/
-b&h-luxi serif-medium-r-normal--*-%d-*-*-p-*-iso8859-1,/
-misc-ZYSong18030-medium-r-normal--0-0-0-0-c-0-gb18030.2000-1

要用 fonts.dir 中有的中文字體替換,其他的依此類推

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章