|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
有了这样一个呼声:让java代替C语言成为基本语言。这些足以说明java简单易学的这个优点。其次,java的功能强大,前面我也提到了,EJB3.0的推出使java成为了大型项目的首选。AddingFontstotheJavaRuntime
要加一种亚洲字体进JRE,请按以下步骤举行:
1.装进字体
起首,你必需装载中文、日文、韩文或传统的中笔墨体(楷书、宋体等)到你的体系内里
2.复制字体进font.properties
装好了字体后,复制你感乐趣字体的descriptio到font.properties,最简便的办法是把
font.properties.<locale>间接更名为font.properties
比方:要利用中笔墨体,你能够复制大概更名font.properties.zh为font.properties.
现行的WIN32JDK供应以下fontproperties文件
./lib/font.properties
./lib/font.properties.ja
./lib/font.properties.ko
./lib/font.properties.zh
./lib/font.properties.zh_TW
而且你能够在JRE里利用多于一种的亚洲字体,所必需做的就是编纂font.properties
文件。
比方你要加三种SERIF字体;
serif.0=TimesNewRoman,ANSI_CHARSET
serif.1=WingDings,SYMBOL_CHARSET,NEED_CONVERTED
serif.2=Symbol,SYMBOL_CHARSET,NEED_CONVERTED
<virtualfontname>.<indexnumber>=<platformfontname>,attributes
前面有三个参数,如TimesNewRoman、WingDings就是字体名
第二个参数(SYMBOL_CHARSET)是响应字符集的处置接口
第三个参数是标明响应字符集不克不及间接同过UNICODE编码处置,必要与UNICODE间的转换器
经由过程以下语句设分歧FONTS的转换器
fontcharset.serif.1=sun.awt.windows.CharToByteWingDings
fontcharset.serif.2=sun.awt.CharToByteSymbol
用户也能够定制本人的字体、字符集与自界说的UNICODE转换器
比方说你想增添你本人定制的字体到JAVA的serif系列字体里往,
假定你的字体共有256个,从0到0Xff.正对应于UNICODE里的OXE000-0XEOFF。
起首你要计划你的转换类
packagemypkg.converter;
importsun.io.CharToByteISO8859_1;
importsun.io.CharToByteConverter;
importsun.io.ConversionBufferFullException;
publicclassCharToByteMyFontextendssun.io.CharToByteISO8859_1{
/*
*Thismethodindicatestherangethisfontcovers.
*/
publicbooleancanConvert(charch){
if(ch>=0xe000&&ch<=0xe0ff){
returntrue;
}
returnfalse;
}
/*
*Thismethodconvertstheunicodetothisfontindex.
*/
publicintconvert(char[]input,intinStart,intinEnd,
byte[]output,intoutStart,intoutEnd)
throwsConversionBufferFullException{
intoutIndex=outStart;
for(inti=inStart;i<inEnd;i++){
charch=input[i];
if(ch>=0xe000&&ch<=0xe0ff){
if(outIndex>=outEnd)
thrownewConversionBufferFullException();
output[outIndex++]=(byte)(ch-0xe000);
}
}
returnoutIndex-outStart;
}
第二步,加你本人的字体和转换器进Properties文件
你先要增添你的字体的名子进文件里,
如
serif.3=<yourownfontname>
然后界说响应的converter
fontcharset.serif.3=mypkg.converter.CharToByteMyfont
为了断定JRE可以找到你的转换器,你的applicationclasspath必需包括转换器的路径
以上是我看了sun里的相干文章后以为很不错而大略收拾出来的,目标只在于把相干内容也许先容一下,请不要见笑,最好参考英文原文
http://java.sun.com/products/jdk/1.1/docs/guide/intl/fontprop.html
或到http://java.sun.com/products/jdk/1.1/docs/guide/intl/index.html看更多的Internationalization相干材料和samples
自己正在做多国语的网版辞书,以是有在找相干材料,这是我看到的对照有效的叙说JAVA中字符集处置的文章,假如列位看到更好的java对unicode撑持的材料请告诉我,感谢
先说优点,首先和C,C++这些语言比起来,java很简单,去掉指针的java,非常好理解,自动垃圾回收机制也很好,自从JDK1.5推出以后,性能上又有了很大提高。 |
|