NetBeans中文字体显示问题

在尝试使用NetBeans 6.0时遇到了中文字体显示为方框的问题。通过深入研究,发现解决方案在于调整JDK的fontconfig.properties文件,通过配置该文件使Java IDE支持混排字体,例如将dialoginput字体设为在英文状态下使用Verdana,在中文状态下使用MingLiU,从而解决了中文显示问题。
摘要由CSDN通过智能技术生成

今天下了NetBeans 6.0, SUN公司出品的IDE,以前一直在用Eclipse,所以对新接触的IDE非常好奇。但问题不到三分钟就出来了:在选择字体时,选择英文字体之后,中文就无法正常显示了,本应是汉字的地方显示为一个个的方框,令我感到绝望。追求美观的我怎么可能将就着使用难看的默认字体!

开始百度!!从傍晚11点折腾到现在,晚上3点,终于大功告成。

突破口是JDK中的fontconfig.properties这个文件。存放在jdk/jre/lib中,JAVA的字体显示方式是自成体系的,一般来说只显示字体能显示的字符,于是当英文字体遇到中文字符时,显示的只是方框了。还好从JDK1.5之后JAVA提供了上面提到的文件来配置自定义混排字体,从而可以实现一种字体显示多种文字。下面是具体配置:

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

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

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

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

filename.Verdana=verdana.TTF

这里,自定义的dialoginput字体在遇到英文时使用Verdana字体,在遇到中文时使用MingLiu字体,后面还有日韩等字体。

配置之后的个人喜爱的字体显示图片:

sample

在最后完成之前偶走了相当长的弯路,害得今天要睡到至少10点才能起了...

这里是我修改后的fontconfig.properties文件

其中dialoginput字体为个性化的字体, 与上图显示的字体对应.

# @(#)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
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值