NetBean6字体配置

    安装netbean6.1m多国语言版、squirrel-sql-2.4.1等开发工具、默认字体都是Monospace 12;但是编码时英文字体以宋体显示、显示极为难看,google上荡了N多方法,建议多是修改netbean、squirrel-sql-2.4.1字体为Courier New;
    默认情况下,Java应用程序中的中文字体和英文字体是分开使用的,这样导致不能同时使用某个英文字体和某个中文字体来显示同个程序中包含中文和英文的文字。例如,在Netbeans中不能使用Courser 10 Pitch字体(Windows下为Courser New)和某个中文字体(比如宋体或微软雅黑)来显示一个java源代码,如果选择Courser字体,那么源代码中的中文就无法显示,如果选择宋体或雅黑,那么英文字体则是采用默认映射的某个字体。
    忍耐了俩个多月,周末有系统研究了一边 ,发现网上说好多java目录中jre1.5.0_07\lib\fontconfig.properties.src解决,本人尝试N次,但一直无效,最后在阅读netbean启动加载配置时发现了这个一直导致无效的问题:
NetBeans 6.1\etc\netbeans.conf

# Default location of JDK, can be overridden by using --jdkhome <dir>:
netbeans_jdkhome
="C:\Program Files\Java\jdk1.5.0_07"

netbean使用的并不是C:\Program Files\Java\jre1.5.0_07\lib,而是C:\Program Files\Java\jdk1.5.0_07\jre,我们找到了地方,然后修改加载顺序,对于英文,monospaced默认就是映射为Courier New字体,但为什么在Java程序里(比如Netbeans)确不能显示呢?将\fontconfig.properties.src内容复制到fontconfig.properties,然后找到sequence.monospaced.GBK=sequence.monospaced.GBK=chinese-ms936,alphabetic,dingbats,symbol,可以看出对于中文字体的搜索顺序是先搜chinese-ms936,而chinese-ms936是用allfonts的雅黑来显示英文,所以不好看,因此你只要简单将 chinese-ms936和alphabetic这两个交换一下变成:sequence.monospaced.GBK=alphabetic,chinese-ms936,dingbats,symbol保存后重新启动netbean,squirrel-sql-2.4.1等java桌面应用,ok,一切都搞定了;如果原来修改了netbean的字体设置,麻烦你恢复为默认配置,这样再次打开java开发的软件,ok,是不是漂亮了^_^

下面是我修改后的文件:
# @(#)fontconfig.properties    1.5 04/01/28
#
# Copyright 
2003 Sun Microsystems, Inc. All rights reserved.
#

# Version

version
=1

# Component Font Mappings

allfonts.chinese-ms936
=SimSun
allfonts.chinese-gb18030
=SimSun-18030
allfonts.chinese-hkscs
=MingLiU_HKSCS
allfonts.devanagari
=Mangal
allfonts.dingbats
=Wingdings
allfonts.lucida
=Lucida Sans Regular
allfonts.symbol
=Symbol
allfonts.thai
=Lucida Sans Regular

serif.plain.alphabetic
=Times New Roman
serif.plain.chinese-ms950
=MingLiU
serif.plain.hebrew
=David
serif.plain.japanese
=MS Mincho
serif.plain.korean
=Batang

serif.bold.alphabetic
=Times New Roman Bold
serif.bold.chinese-ms950
=PMingLiU
serif.bold.hebrew
=David Bold
serif.bold.japanese
=MS Mincho
serif.bold.korean
=Batang

serif.italic.alphabetic
=Times New Roman Italic
serif.italic.chinese-ms950
=PMingLiU
serif.italic.hebrew
=David
serif.italic.japanese
=MS Mincho
serif.italic.korean
=Batang

serif.bolditalic.alphabetic
=Times New Roman Bold Italic
serif.bolditalic.chinese-ms950
=PMingLiU
serif.bolditalic.hebrew
=David Bold
serif.bolditalic.japanese
=MS Mincho
serif.bolditalic.korean
=Batang

sansserif.plain.alphabetic
=Arial
sansserif.plain.chinese-ms950
=MingLiU
sansserif.plain.hebrew
=David
sansserif.plain.japanese
=MS Gothic
sansserif.plain.korean
=Gulim

sansserif.bold.alphabetic
=Arial Bold
sansserif.bold.chinese-ms950
=PMingLiU
sansserif.bold.hebrew
=David Bold
sansserif.bold.japanese
=MS Gothic
sansserif.bold.korean
=Gulim

sansserif.italic.alphabetic
=Arial Italic
sansserif.italic.chinese-ms950
=PMingLiU
sansserif.italic.hebrew
=David
sansserif.italic.japanese
=MS Gothic
sansserif.italic.korean
=Gulim

sansserif.bolditalic.alphabetic
=Arial Bold Italic
sansserif.bolditalic.chinese-ms950
=PMingLiU
sansserif.bolditalic.hebrew
=David Bold
sansserif.bolditalic.japanese
=MS Gothic
sansserif.bolditalic.korean
=Gulim

monospaced.plain.alphabetic
=Courier New
monospaced.plain.chinese-ms950
=MingLiU
monospaced.plain.hebrew
=David
monospaced.plain.japanese
=MS Gothic
monospaced.plain.korean
=GulimChe

monospaced.bold.alphabetic
=Courier New Bold
monospaced.bold.chinese-ms950
=PMingLiU
monospaced.bold.hebrew
=David Bold
monospaced.bold.japanese
=MS Gothic
monospaced.bold.korean
=GulimChe

monospaced.italic.alphabetic
=Courier New Italic
monospaced.italic.chinese-ms950
=PMingLiU
monospaced.italic.hebrew
=David
monospaced.italic.japanese
=MS Gothic
monospaced.italic.korean
=GulimChe

monospaced.bolditalic.alphabetic
=Courier New Bold Italic
monospaced.bolditalic.chinese-ms950
=PMingLiU
monospaced.bolditalic.hebrew
=David Bold
monospaced.bolditalic.japanese
=MS Gothic
monospaced.bolditalic.korean
=GulimChe

dialog.plain.alphabetic
=Arial
dialog.plain.chinese-ms950
=MingLiU
dialog.plain.hebrew
=David
dialog.plain.japanese
=MS Gothic
dialog.plain.korean
=Gulim

dialog.bold.alphabetic
=Arial Bold
dialog.bold.chinese-ms950
=PMingLiU
dialog.bold.hebrew
=David Bold
dialog.bold.japanese
=MS Gothic
dialog.bold.korean
=Gulim

dialog.italic.alphabetic
=Arial Italic
dialog.italic.chinese-ms950
=PMingLiU
dialog.italic.hebrew
=David
dialog.italic.japanese
=MS Gothic
dialog.italic.korean
=Gulim

dialog.bolditalic.alphabetic
=Arial Bold Italic
dialog.bolditalic.chinese-ms950
=PMingLiU
dialog.bolditalic.hebrew
=David Bold
dialog.bolditalic.japanese
=MS Gothic
dialog.bolditalic.korean
=Gulim

dialoginput.plain.alphabetic
=Courier New
dialoginput.plain.chinese-ms950
=MingLiU
dialoginput.plain.hebrew
=David
dialoginput.plain.japanese
=MS Gothic
dialoginput.plain.korean
=Gulim

dialoginput.bold.alphabetic
=Courier New Bold
dialoginput.bold.chinese-ms950
=PMingLiU
dialoginput.bold.hebrew
=David Bold
dialoginput.bold.japanese
=MS Gothic
dialoginput.bold.korean
=Gulim

dialoginput.italic.alphabetic
=Courier New Italic
dialoginput.italic.chinese-ms950
=PMingLiU
dialoginput.italic.hebrew
=David
dialoginput.italic.japanese
=MS Gothic
dialoginput.italic.korean
=Gulim

dialoginput.bolditalic.alphabetic
=Courier New Bold Italic
dialoginput.bolditalic.chinese-ms950
=PMingLiU
dialoginput.bolditalic.hebrew
=David Bold
dialoginput.bolditalic.japanese
=MS Gothic
dialoginput.bolditalic.korean
=Gulim

# Search Sequences

sequence.allfonts
=alphabetic/default,dingbats,symbol

sequence.serif.GBK
=alphabetic,chinese-ms936,dingbats,symbol
sequence.sansserif.GBK
=alphabetic,chinese-ms936,dingbats,symbol
sequence.monospaced.GBK
=alphabetic,chinese-ms936,dingbats,symbol
sequence.dialog.GBK
=alphabetic,chinese-ms936,dingbats,symbol
sequence.dialoginput.GBK
=alphabetic,chinese-ms936,dingbats,symbol

sequence.serif.GB18030
=alphabetic,chinese-gb18030,dingbats,symbol
sequence.sansserif.GB18030
=alphabetic,chinese-gb18030,dingbats,symbol
sequence.monospaced.GB18030
=alphabetic,chinese-gb18030,dingbats,symbol
sequence.dialog.GB18030
=alphabetic,chinese-gb18030,dingbats,symbol
sequence.dialoginput.GB18030
=alphabetic,chinese-gb18030,dingbats,symbol

sequence.serif.x-windows-
950=alphabetic,chinese-ms950,dingbats,symbol
sequence.sansserif.x-windows-
950=alphabetic,chinese-ms950,dingbats,symbol
sequence.monospaced.x-windows-
950=chinese-ms950,alphabetic,dingbats,symbol
sequence.dialog.x-windows-
950=alphabetic,chinese-ms950,dingbats,symbol
sequence.dialoginput.x-windows-
950=alphabetic,chinese-ms950,dingbats,symbol

sequence.serif.x-MS950-HKSCS
=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol
sequence.sansserif.x-MS950-HKSCS
=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol
sequence.monospaced.x-MS950-HKSCS
=chinese-ms950,alphabetic,chinese-hkscs,dingbats,symbol
sequence.dialog.x-MS950-HKSCS
=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol
sequence.dialoginput.x-MS950-HKSCS
=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol

sequence.allfonts.UTF-
8.hi=alphabetic/1252,devanagari,dingbats,symbol

sequence.allfonts.windows-
1255=hebrew,alphabetic/1252,dingbats,symbol

sequence.serif.windows-31j
=alphabetic,japanese,dingbats,symbol
sequence.sansserif.windows-31j
=alphabetic,japanese,dingbats,symbol
sequence.monospaced.windows-31j
=japanese,alphabetic,dingbats,symbol
sequence.dialog.windows-31j
=alphabetic,japanese,dingbats,symbol
sequence.dialoginput.windows-31j
=alphabetic,japanese,dingbats,symbol

sequence.serif.x-windows-
949=alphabetic,korean,dingbats,symbol
sequence.sansserif.x-windows-
949=alphabetic,korean,dingbats,symbol
sequence.monospaced.x-windows-
949=korean,alphabetic,dingbats,symbol
sequence.dialog.x-windows-
949=alphabetic,korean,dingbats,symbol
sequence.dialoginput.x-windows-
949=alphabetic,korean,dingbats,symbol

sequence.allfonts.x-windows-
874=alphabetic,thai,dingbats,symbol

sequence.fallback
=lucida,\
                  chinese-ms950
,chinese-hkscs,chinese-ms936,chinese-gb18030,\
                  japanese
,korean

# Exclusion Ranges

exclusion.alphabetic
=0700-1e9f,1f00-20ab,20ad-f8ff
exclusion.chinese-gb18030
=0390-03d6,2200-22ef,2701-27be
exclusion.hebrew
=0041-005a,0060-007a,007f-00ff,20ac-20ac

# Monospaced to Proportional width variant mapping
# (Experimental private syntax)
proportional.MS_Gothic
=MS PGothic
proportional.MS_Mincho
=MS PMincho
proportional.MingLiU
=PMingLiU

# Font File Names

filename.Arial
=ARIAL.TTF
filename.Arial_Bold
=ARIALBD.TTF
filename.Arial_Italic
=ARIALI.TTF
filename.Arial_Bold_Italic
=ARIALBI.TTF

filename.Courier_New
=COUR.TTF
filename.Courier_New_Bold
=COURBD.TTF
filename.Courier_New_Italic
=COURI.TTF
filename.Courier_New_Bold_Italic
=COURBI.TTF

filename.Times_New_Roman
=TIMES.TTF
filename.Times_New_Roman_Bold
=TIMESBD.TTF
filename.Times_New_Roman_Italic
=TIMESI.TTF
filename.Times_New_Roman_Bold_Italic
=TIMESBI.TTF

filename.SimSun
=SIMSUN.TTC
filename.SimSun-
18030=SIMSUN18030.TTC

filename.MingLiU
=MINGLIU.TTC
filename.PMingLiU
=MINGLIU.TTC
filename.MingLiU_HKSCS
=hkscsm3u.ttf

filename.David
=DAVID.TTF
filename.David_Bold
=DAVIDBD.TTF

filename.MS_Mincho
=MSMINCHO.TTC
filename.MS_PMincho
=MSMINCHO.TTC
filename.MS_Gothic
=MSGOTHIC.TTC
filename.MS_PGothic
=MSGOTHIC.TTC

filename.Gulim
=gulim.TTC
filename.Batang
=batang.TTC
filename.GulimChe
=gulim.TTC

filename.Lucida_Sans_Regular
=LucidaSansRegular.ttf
filename.Mangal
=MANGAL.TTF
filename.Symbol
=SYMBOL.TTF
filename.Wingdings
=WINGDING.TTF


posted on 2008-09-07 13:46 空白 阅读(2046) 评论(2)  编辑  收藏 所属分类: Java

评论

# re: NetBean6字体配置[未登录] 2008-11-01 02:32 AlleNny

哈哈,按照你的方法,我也把问题解决啦,非常感谢!  回复  更多评论   

# re: NetBean6字体配置 2009-02-03 22:35 satyrie

我是用繁體中文,但是我將 sequence.monospaced.x-windows-950=chinese-ms950,alphabetic,dingbats,symbol
修改成 sequence.monospaced.x-windows-950=alphabetic,chinese-ms950,dingbats,symbol
並沒有生效,why?  回复  更多评论   


只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问  
 
<2008年9月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

导航

统计

常用链接

留言簿(1)

随笔分类(15)

积分与排名

最新评论

阅读排行榜

评论排行榜