Java开发网 |
注册 |
登录 |
帮助 |
搜索 |
排行榜 |
发帖统计
|
您没有登录 |
» Java开发网 » Java IDE
打印话题 寄给朋友 订阅主题 |
作者 | JBuilder,IdeaJ 等Java开发工具中文字体显示的问题 |
hawker
CJSDN高级会员 发贴: 222 积分: 50 |
于 2002-12-10 15:14
我们使用JBuilder,IdeaJ和其他的集成开发环境,都遇到过中文字体显示的问题,有的人将字号设置成奇数,有的人将字体进行修改,都不能解决根本问题。通过仔细研究JRE中关于中文字体配置文件,发现这些问题的关键是这些工具所依赖的JRE中关于中文字体设计的配置文件存在问题,造成依赖它的应用程序显示不正确。 在Windows 2000/xp系统中,宋体的字体名称是simsun.ttc,可是在font.properties.zh中关于宋体的字体文件名称却是simsun.ttf,这种配置在windows 98/me下面没有问题,但是在2000/xp下面,中文的文字就会显示为方块了。 在font.properties.zh中,逻辑字体的斜体,加重所对应的实际字体在font.properties.zh中也没用正确配置,造成我们在java程序中进行编辑时,插入的实际位置和光标的位置不一致,这是我们只能将IDE工具的字体设置成宋体,并且将字体字号设置成奇数进行解决(Borland的技术攻势就推荐这种方法),在IdeaJ中,我们将所有的字体加重属性去掉,也能解决问题。但是这种解决方法不能根本解决问题,当工具出现新的版本时,还可能出现新的问题。 最好的解决方法是修改font.properties.zh文件,正确配置相关平台的字体的逻辑字体和物理字体的对应关系。下面是我修改的font.properties.zh文件,将它使用文本编辑程序保存到IDE工具使用的JRE的lib目录,中文显示问题可以解决,这个文件在Windows 2000 , JDK 1.4.1_01, JBuilder 7/8, IDEAJ 3.0下测试通过。 # Begin of font.properties.zh # # # @(#)font.properties.zh # save it to %JRE%/lib/font.properties.zh # # @edit by Hakwer hao (hhao99@yahoo.com.cn) # @ Dec-06-2002 # # AWT Font default Properties for Chinese Windows # dialog.plain.0=Arial,ANSI_CHARSET dialog.plain.1=\u5b8b\u4f53,GB2312_CHARSET dialog.plain.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED dialog.plain.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED dialog.bold.0=Arial Bold,ANSI_CHARSET dialog.bold.1=\u5b8b\u4f53,GB2312_CHARSET dialog.bold.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED dialog.bold.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED dialog.italic.0=Arial Italic,ANSI_CHARSET dialog.italic.1=\u5b8b\u4f53,GB2312_CHARSET dialog.italic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED dialog.italic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED dialog.bolditalic.0=Arial Bold Italic,ANSI_CHARSET dialog.bolditalic.1=\u5b8b\u4f53,GB2312_CHARSET dialog.bolditalic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED dialog.bolditalic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED dialoginput.plain.0=Courier New,ANSI_CHARSET dialoginput.plain.1=\u5b8b\u4f53,GB2312_CHARSET dialoginput.plain.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED dialoginput.plain.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED dialoginput.bold.0=Courier New Bold,ANSI_CHARSET dialoginput.bold.1=\u5b8b\u4f53,GB2312_CHARSET dialoginput.bold.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED dialoginput.bold.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED dialoginput.italic.0=Courier New Italic,ANSI_CHARSET dialoginput.italic.1=\u5b8b\u4f53,GB2312_CHARSET dialoginput.italic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED dialoginput.italic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED dialoginput.bolditalic.0=Courier New Bold Italic,ANSI_CHARSET dialoginput.bolditalic.1=\u5b8b\u4f53,GB2312_CHARSET dialoginput.bolditalic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED dialoginput.bolditalic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED serif.plain.0=Times New Roman,ANSI_CHARSET serif.plain.1=\u5b8b\u4f53,GB2312_CHARSET serif.plain.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED serif.plain.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED serif.bold.0=Times New Roman Bold,ANSI_CHARSET serif.bold.1=\u5b8b\u4f53,GB2312_CHARSET serif.bold.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED serif.bold.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED serif.italic.0=Times New Roman Italic,ANSI_CHARSET serif.italic.1=\u5b8b\u4f53,GB2312_CHARSET serif.italic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED serif.italic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED serif.bolditalic.0=Times New Roman Bold Italic,ANSI_CHARSET serif.bolditalic.1=\u5b8b\u4f53,GB2312_CHARSET serif.bolditalic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED serif.bolditalic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED sansserif.plain.0=Arial,ANSI_CHARSET sansserif.plain.1=\u5b8b\u4f53,GB2312_CHARSET sansserif.plain.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED sansserif.plain.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED sansserif.bold.0=Arial Bold,ANSI_CHARSET sansserif.bold.1=\u5b8b\u4f53,GB2312_CHARSET sansserif.bold.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED sansserif.bold.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED sansserif.italic.0=Arial Italic,ANSI_CHARSET sansserif.italic.1=\u5b8b\u4f53,GB2312_CHARSET sansserif.italic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED sansserif.italic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED sansserif.bolditalic.0=Arial Bold Italic,ANSI_CHARSET sansserif.bolditalic.1=\u5b8b\u4f53,GB2312_CHARSET sansserif.bolditalic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED sansserif.bolditalic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED monospaced.plain.0=Courier New,GB2312_CHARSET monospaced.plain.1=\u5b8b\u4f53,GB2312_CHARSET monospaced.plain.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED monospaced.plain.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED monospaced.bold.0=Courier New Bold,GB2312_CHARSET monospaced.bold.1=\u5b8b\u4f53,GB2312_CHARSET monospaced.bold.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED monospaced.bold.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED monospaced.italic.0=Courier New Italic,GB2312_CHARSET monospaced.italic.1=\u5b8b\u4f53,GB2312_CHARSET monospaced.italic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED monospaced.italic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED monospaced.bolditalic.0=Courier New Bold Italic,GB2312_CHARSET monospaced.bolditalic.1=\u5b8b\u4f53,GB2312_CHARSET monospaced.bolditalic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED monospaced.bolditalic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED # name aliases # alias.timesroman=serif alias.helvetica=sansserif alias.courier=monospaced # for backward compatibility #timesroman.0=Times New Roman,ANSI_CHARSET #helvetica.0=Arial,ANSI_CHARSET #courier.0=Courier New,ANSI_CHARSET zapfdingbats.0=WingDings,SYMBOL_CHARSET # font filenames for reduced initialization time # filename.\u5b8b\u4f53=SIMSUN.TTC 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.WingDings=WINGDING.TTF filename.Symbol=SYMBOL.TTF # Default font definition # default.char=2751 # Static FontCharset info. # #fontcharset.dialog.0=sun.io.CharToByteCp1252 fontcharset.dialog.1=sun.io.CharToByteGBK fontcharset.dialog.2=sun.awt.windows.CharToByteWingDings fontcharset.dialog.3=sun.awt.CharToByteSymbol #fontcharset.dialoginput.0=sun.io.CharToByteCp1252 fontcharset.dialoginput.1=sun.io.CharToByteGBK fontcharset.dialoginput.2=sun.awt.windows.CharToByteWingDings fontcharset.dialoginput.3=sun.awt.CharToByteSymbol #fontcharset.serif.0=sun.io.CharToByteCp1252 fontcharset.serif.1=sun.io.CharToByteGBK fontcharset.serif.2=sun.awt.windows.CharToByteWingDings fontcharset.serif.3=sun.awt.CharToByteSymbol #fontcharset.sansserif.0=sun.io.CharToByteCp1252 fontcharset.sansserif.1=sun.io.CharToByteGBK fontcharset.sansserif.2=sun.awt.windows.CharToByteWingDings fontcharset.sansserif.3=sun.awt.CharToByteSymbol #fontcharset.monospaced.0=sun.io.CharToByteCp1252 fontcharset.monospaced.1=sun.io.CharToByteGBK fontcharset.monospaced.2=sun.awt.windows.CharToByteWingDings fontcharset.monospaced.3=sun.awt.CharToByteSymbol # Exclusion Range info. # exclusion.dialog.plain.0=00a0-f8ff exclusion.dialog.italic.0=00a0-f8ff exclusion.dialog.bold.0=00a0-f8ff exclusion.dialog.bolditalic.0=00a0-f8ff exclusion.dialoginput.plain.0=00a0-f8ff exclusion.dialoginput.italic.0=00a0-f8ff exclusion.dialoginput.bold.0=00a0-f8ff exclusion.dialoginput.bolditalic.0=00a0-f8ff exclusion.serif.plain.0=00a0-f8ff exclusion.serif.italic.0=00a0-f8ff exclusion.serif.bold.0=00a0-f8ff exclusion.serif.bolditalic.0=00a0-f8ff exclusion.sansserif.plain.0=00a0-f8ff exclusion.sansserif.italic.0=00a0-f8ff exclusion.sansserif.bold.0=00a0-f8ff exclusion.sansserif.bolditalic.0=00a0-f8ff exclusion.monospaced.plain.0=00a0-f8ff exclusion.monospaced.italic.0=00a0-f8ff exclusion.monospaced.bold.0=00a0-f8ff exclusion.monospaced.bolditalic.0=00a0-f8ff # charset for text input # inputtextcharset=GB2312_CHARSET # # @ end of font.properties.zh # font.properties.zh (7.13k) |
作者 | 错误 [Re:hawker] |
encamp
发贴: 0 积分: 0 |
于 2002-12-10 16:44
我的IDE本来是好的,用了你的文件结果汉字都变成方框了 |
作者 | 你的操作系统是什么版本的?win98/me的话不需要这个文件 [Re:hawker] |
hawker
CJSDN高级会员 发贴: 222 积分: 50 |
于 2002-12-10 16:54
无 |
作者 | JBuilder,IdeaJ 等Java开发工具中文字体显示的问题 [Re:hawker] |
hawker
CJSDN高级会员 发贴: 222 积分: 50 |
于 2002-12-10 18:36
在windows 98/me下,JRE的字体配置文件不存在什么问题,但是在windows 2000/xp下,不修改这个文件中文肯定是不能正确显示的,除非你是用的英文操作环境。 |
作者 | Re:JBuilder,IdeaJ 等Java开发工具中文字体显示的问题 [Re:hawker] |
SimonLei
CJSDN高级会员 发贴: 288 积分: 100 |
于 2002-12-10 20:05
hawker wrote: 呵呵,我用的就是win 2000 中文版。只是简单的把bold去掉就ok了。 You may say I am a dreamer, But I am not the only one. My blog+wiki: http://blogsite.3322.org/ |
作者 | win2000中文 [Re:hawker] |
encamp
发贴: 0 积分: 0 |
于 2002-12-11 11:35
我用win2000中文,把bold去掉就ok了 |
作者 | Re:JBuilder,IdeaJ 等Java开发工具中文字体显示的问题 [Re:cckoan] |
coder
CJSDN高级会员 发贴: 140 积分: 110 |
于 2003-01-15 11:37
这是我根据前面所叙作的修改,for jb8。 不会再有方块 font.properties.zh (5.91k)
coder edited on 2003-01-15 17:45
|
作者 | Re:JBuilder,IdeaJ 等Java开发工具中文字体显示的问题 [Re:hawker] |
shsen
发贴: 0 积分: 0 |
于 2003-01-15 17:34
jb8的我不知道,但我知道我今天装的idea中文就是显示成方块。是不是只能用这个文件解决?还是有更方便的方法? |
作者 | Re:JBuilder,IdeaJ 等Java开发工具中文字体显示的问题 [Re:hawker] |
sanigo
给我三刀吧 版主 发贴: 529 积分: 395 |
于 2003-01-17 08:57
我觉得这样改没什么道理。 只要把字体改成"Courier New",就可以得到一样的结果 |
作者 | 谢谢 hawker,至少JBuilder7E中是可以解决问题的 [Re:hawker] |
Rainwolf
发贴: 107 积分: 30 |
于 2003-01-17 12:18
我是新手,正为JBuilder7中光标位置错乱烦恼不已,装了JB7又删掉,再装JB8也一样,刚想放弃JB使用写字板就得到了Hawker的这个字体文件,非常感谢,可以重回JB怀抱了。:) |
作者 | Re:JBuilder,IdeaJ 等Java开发工具中文字体显示的问题 [Re:hawker] |
scottding
十三部落酋长 CJSDN高级会员 发贴: 1054 积分: 101 |
于 2003-01-17 12:46
修改的方法其实有很多。。在这个版面已经出现了很多的解决办法。你可以看看。 |
作者 | Re:JBuilder,IdeaJ 等Java开发工具中文字体显示的问题 [Re:sanigo] |
stone7
发贴: 0 积分: 0 |
于 2003-01-23 17:27
sanigo wrote: 是啊,好像改一下字体就好了啊 |
作者 | Re:JBuilder,IdeaJ 等Java开发工具中文字体显示的问题 [Re:hawker] |
chaor
CJSDN高级会员 发贴: 122 积分: 80 |
于 2003-02-19 11:02
我的显示都没有问题,只是jb8无论如何都光标位置不正确 |
作者 | Re:JBuilder,IdeaJ 等Java开发工具中文字体显示的问题 [Re:hawker] |
平和
发贴: 0 积分: 0 |
于 2003-02-20 15:02
thank you |
作者 | Re:JBuilder,IdeaJ 等Java开发工具中文字体显示的问题 [Re:hawker] |
rilong
发贴: 38 积分: 10 |
于 2003-03-01 04:18
安装语言包 |
作者 | Re:JBuilder,IdeaJ 等Java开发工具中文字体显示的问题 [Re:hawker] |
lxia
Noodle 发贴: 14 积分: 40 |
于 2003-03-01 19:38
将IDEA中的Color&Fonts设置页面中的字体选为Monospaced,IDEA会使用宋体显示中文,另外在各个Font设置页面将bold字体关掉,就会解决显示粗体字光标定位不准的问题。 |
作者 | Re:JBuilder,IdeaJ 等Java开发工具中文字体显示的问题 [Re:hawker] |
magi
发贴: 0 积分: 0 |
于 2003-03-04 17:15
都显示的很好呀,选择default一切ok,只是idea本身的对话框有些问题 |
作者 | Re:JBuilder,IdeaJ 等Java开发工具中文字体显示的问题 [Re:hawker] |
ccic134302
发贴: 185 积分: 40 |
于 2003-03-06 14:00
我装了jb7以后,再装weblogic提示错误,啥意思? |
已读帖子 新的帖子 被删除的帖子 |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |