This section is still under revision.
I made this file by combining various locale specific files into a single one. I left the copyright notice intact and I hope it does not cause problems wrt Sensei's. Currently this file has some probably needless duplication and I am not sure whether it will display all Simplified and Traditional Chinese characters. It should remove almost every box you are going to see on KGS, though, for the present time.
The wide Russian characters could be perhaps fixed somehow by adding settings for Russian. The Cyrillic writing looks strange with these settings due to the large space given for every letter.
You should save it as font.properties in the lib directory under your java installation. It is found in Program Files at least on my system. Keep a copy of the old one!
Right now this has a problem. I don't know how to remove the question marks. If anyone can fix this, please do. I'll find out more about this when I have more time. My apologies.
It looks like it works now and you can just cut & paste this file. Please write a few comments here if you try it and find that it works or doesn't.
Note about the fonts listed below: I think these are the default fonts for the languages in question that Windows uses and you can get them from your Windows installation disk by installing support for these languages. My computer installed them automatically when I visited some websites written in these languages (I have Windows XP on this computer).
-- yodh
All entries in the section "Exclusion Ranges", IOW all entries starting with "exclusion." have to be commented out (put # in front of each line) to make cyrillic characters display normally.
I also made the following changes to some fontcharset lines in my font properties file:
fontcharset.<xxx>.0=sun.io.CharToByteMS932 to
fontcharset.<xxx>.0=sun.io.CharToByteCP1257
<xxx> is 'dialog','dialoginput','serif','sansserif' and monospaced'.
This change seems to have no effect on the display of cyrillic characters. So this might be optional. But I found this in the cyrillic version of font.properties and thought it might be relevant to change.
If your Java installation still doesn't display japanese, chinese and korean characters correctly, try moving all font.properties.XXX files from the JRE lib folder to another location and leave only font.properties in the JRE lib folder. (Move, not delete! You might still need those files someday.) This should fix it because your Java might use one of those files instead of font.properties (system default language non-english). By removing those files you force your Java installation to use font.properties.
-- owl
# file font.properties begins here. this is made by combining # the relevant info from font.properties.*, where * has the # values ja, ko and zh, for Japanese, Korean and Chinese, resp # # @(#)font.properties. 1.30 02/03/07 # # Copyright 2002 Sun Microsystems, Inc. All rights reserved. #
# Component Font Mappings # dialog.plain.0=Arial,ANSI_CHARSET dialog.plain.1=\uff2d\uff33 \u30b4\u30b7\u30c3\u30af,SHIFTJIS_CHARSET dialog.plain.2=\u5b8b\u4f53,GB2312_CHARSET dialog.plain.3=\uad74\ub9bc,HANGEUL_CHARSET dialog.plain.4=WingDings,SYMBOL_CHARSET dialog.plain.5=Symbol,SYMBOL_CHARSET
dialog.bold.0=Arial,ANSI_CHARSET dialog.bold.1=\uff2d\uff33 \u30b4\u30b7\u30c3\u30af,SHIFTJIS_CHARSET dialog.bold.2=\u5b8b\u4f53,GB2312_CHARSET dialog.bold.3=\uad74\ub9bc,HANGEUL_CHARSET dialog.bold.4=WingDings,SYMBOL_CHARSET dialog.bold.5=Symbol,SYMBOL_CHARSET
dialog.italic.0=Arial,ANSI_CHARSET dialog.italic.1=\uff2d\uff33 \u30b4\u30b7\u30c3\u30af,SHIFTJIS_CHARSET dialog.italic.2=\u5b8b\u4f53,GB2312_CHARSET dialog.italic.3=\uad74\ub9bc,HANGEUL_CHARSET dialog.italic.4=WingDings,SYMBOL_CHARSET dialog.italic.5=Symbol,SYMBOL_CHARSET
dialog.bolditalic.0=Arial,ANSI_CHARSET dialog.bolditalic.1=\uff2d\uff33 \u30b4\u30b7\u30c3\u30af,SHIFTJIS_CHARSET dialog.bolditalic.2=\u5b8b\u4f53,GB2312_CHARSET dialog.bolditalic.3=\uad74\ub9bc,HANGEUL_CHARSET dialog.bolditalic.4=WingDings,SYMBOL_CHARSET dialog.bolditalic.5=Symbol,SYMBOL_CHARSET
dialoginput.plain.0=Courier New,ANSI_CHARSET dialoginput.plain.1=\uff2d\uff33 \u30b4\u30b7\u30c3\u30af,SHIFTJIS_CHARSET dialoginput.plain.2=\u5b8b\u4f53,GB2312_CHARSET dialoginput.plain.3=\uad74\ub9bc,HANGEUL_CHARSET dialoginput.plain.4=WingDings,SYMBOL_CHARSET dialoginput.plain.5=Symbol,SYMBOL_CHARSET
dialoginput.bold.0=Courier New Bold,ANSI_CHARSET dialoginput.bold.1=\uff2d\uff33 \u30b4\u30b7\u30c3\u30af,SHIFTJIS_CHARSET dialoginput.bold.2=\u5b8b\u4f53,GB2312_CHARSET dialoginput.bold.3=\uad74\ub9bc,HANGEUL_CHARSET dialoginput.bold.4=WingDings,SYMBOL_CHARSET dialoginput.bold.5=Symbol,SYMBOL_CHARSET
dialoginput.italic.0=Courier New Italic,ANSI_CHARSET dialoginput.italic.1=\uff2d\uff33 \u30b4\u30b7\u30c3\u30af,SHIFTJIS_CHARSET dialoginput.italic.2=\u5b8b\u4f53,GB2312_CHARSET dialoginput.italic.3=\uad74\ub9bc,HANGEUL_CHARSET dialoginput.italic.4=WingDings,SYMBOL_CHARSET dialoginput.italic.5=Symbol,SYMBOL_CHARSET
dialoginput.bolditalic.0=Courier New Bold Italic,ANSI_CHARSET dialoginput.bolditalic.1=\uff2d\uff33 \u30b4\u30b7\u30c3\u30af,SHIFTJIS_CHARSET dialoginput.bolditalic.2=\u5b8b\u4f53,GB2312_CHARSET dialoginput.bolditalic.3=\uad74\ub9bc,HANGEUL_CHARSET dialoginput.bolditalic.4=WingDings,SYMBOL_CHARSET dialoginput.bolditalic.5=Symbol,SYMBOL_CHARSET
serif.plain.0=Times New Roman,ANSI_CHARSET serif.plain.1=\uff2d\uff33 \u660e\u671d,SHIFTJIS_CHARSET serif.plain.2=\u5b8b\u4f53,GB2312_CHARSET serif.plain.3=\uad74\ub9bc,HANGEUL_CHARSET serif.plain.4=WingDings,SYMBOL_CHARSET serif.plain.5=Symbol,SYMBOL_CHARSET
serif.bold.0=Times New Roman Bold,ANSI_CHARSET serif.bold.1=\uff2d\uff33 \u660e\u671d,SHIFTJIS_CHARSET serif.bold.2=\u5b8b\u4f53,GB2312_CHARSET serif.bold.3=\uad74\ub9bc,HANGEUL_CHARSET serif.bold.4=WingDings,SYMBOL_CHARSET serif.bold.5=Symbol,SYMBOL_CHARSET
serif.italic.0=Times New Roman Italic,ANSI_CHARSET serif.italic.1=\uff2d\uff33 \u660e\u671d,SHIFTJIS_CHARSET serif.italic.2=\u5b8b\u4f53,GB2312_CHARSET serif.italic.3=\uad74\ub9bc,HANGEUL_CHARSET serif.italic.4=WingDings,SYMBOL_CHARSET serif.italic.5=Symbol,SYMBOL_CHARSET
serif.bolditalic.0=Times New Roman Bold Italic,ANSI_CHARSET serif.bolditalic.1=\uff2d\uff33 \u660e\u671d,SHIFTJIS_CHARSET serif.bolditalic.2=\u5b8b\u4f53,GB2312_CHARSET serif.bolditalic.3=\uad74\ub9bc,HANGEUL_CHARSET serif.bolditalic.4=WingDings,SYMBOL_CHARSET serif.bolditalic.5=Symbol,SYMBOL_CHARSET
sansserif.plain.0=Arial,ANSI_CHARSET sansserif.plain.1=\uff2d\uff33 \u30b4\u30b7\u30c3\u30af,SHIFTJIS_CHARSET sansserif.plain.2=\u5b8b\u4f53,GB2312_CHARSET sansserif.plain.3=\uad74\ub9bc,HANGEUL_CHARSET sansserif.plain.4=WingDings,SYMBOL_CHARSET sansserif.plain.5=Symbol,SYMBOL_CHARSET
sansserif.bold.0=Arial Bold,ANSI_CHARSET sansserif.bold.1=\uff2d\uff33 \u30b4\u30b7\u30c3\u30af,SHIFTJIS_CHARSET sansserif.bold.2=\u5b8b\u4f53,GB2312_CHARSET sansserif.bold.3=\uad74\ub9bc,HANGEUL_CHARSET sansserif.bold.4=WingDings,SYMBOL_CHARSET sansserif.bold.5=Symbol,SYMBOL_CHARSET
sansserif.italic.0=Arial Italic,ANSI_CHARSET sansserif.italic.1=\uff2d\uff33 \u30b4\u30b7\u30c3\u30af,SHIFTJIS_CHARSET sansserif.italic.2=\u5b8b\u4f53,GB2312_CHARSET sansserif.italic.3=\uad74\ub9bc,HANGEUL_CHARSET sansserif.italic.4=WingDings,SYMBOL_CHARSET sansserif.italic.5=Symbol,SYMBOL_CHARSET
sansserif.bolditalic.0=Arial Bold Italic,ANSI_CHARSET sansserif.bolditalic.1=\uff2d\uff33 \u30b4\u30b7\u30c3\u30af,SHIFTJIS_CHARSET sansserif.bolditalic.2=\u5b8b\u4f53,GB2312_CHARSET sansserif.bolditalic.3=\uad74\ub9bc,HANGEUL_CHARSET sansserif.bolditalic.4=WingDings,SYMBOL_CHARSET sansserif.bolditalic.5=Symbol,SYMBOL_CHARSET
monospaced.plain.0=Courier New,ANSI_CHARSET monospaced.plain.1=\uff2d\uff33 \u30b4\u30b7\u30c3\u30af,SHIFTJIS_CHARSET monospaced.plain.2=\u5b8b\u4f53,GB2312_CHARSET monospaced.plain.3=\uad74\ub9bc,HANGEUL_CHARSET monospaced.plain.4=WingDings,SYMBOL_CHARSET monospaced.plain.5=Symbol,SYMBOL_CHARSET
monospaced.bold.0=Courier New Bold,ANSI_CHARSET monospaced.bold.1=\uff2d\uff33 \u30b4\u30b7\u30c3\u30af,SHIFTJIS_CHARSET monospaced.bold.2=\u5b8b\u4f53,GB2312_CHARSET monospaced.bold.3=\uad74\ub9bc,HANGEUL_CHARSET monospaced.bold.4=WingDings,SYMBOL_CHARSET monospaced.bold.5=Symbol,SYMBOL_CHARSET
monospaced.italic.0=Courier New Italic,ANSI_CHARSET monospaced.italic.1=\uff2d\uff33 \u30b4\u30b7\u30c3\u30af,SHIFTJIS_CHARSET monospaced.italic.2=\u5b8b\u4f53,GB2312_CHARSET monospaced.italic.3=\uad74\ub9bc,HANGEUL_CHARSET monospaced.italic.4=WingDings,SYMBOL_CHARSET monospaced.italic.5=Symbol,SYMBOL_CHARSET
monospaced.bolditalic.0=Courier New Bold Italic,ANSI_CHARSET monospaced.bolditalic.1=\uff2d\uff33 \u30b4\u30b7\u30c3\u30af,SHIFTJIS_CHARSET monospaced.bolditalic.2=\u5b8b\u4f53,GB2312_CHARSET monospaced.bolditalic.3=\uad74\ub9bc,HANGEUL_CHARSET monospaced.bolditalic.4=WingDings,SYMBOL_CHARSET monospaced.bolditalic.5=Symbol,SYMBOL_CHARSET
# Font File Names # filename.\uff2d\uff33_\u660e\u671d=MSMINCHO.TTC filename.\uff2d\uff33_\u30b4\u30b7\u30c3\u30af=MSGOTHIC.TTC filename.\u5b8b\u4f53=SIMSUN.TTC filename.\uad74\ub9bc=gulim.TTC filename.\ubc14\ud0d5=batang.TTC filename.\uad74\ub9bc\uccb4=gulim.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
# Missing Glyph Character # default.char=2751
# Component Font Character Encodings #
fontcharset.dialog.0=sun.io.CharToByteMS932 fontcharset.dialog.1=sun.io.CharToByteMS932 fontcharset.dialog.2=sun.io.CharToByteGBK fontcharset.dialog.3=sun.io.CharToByteMS949 fontcharset.dialog.4=sun.awt.windows.CharToByteWingDings fontcharset.dialog.5=sun.awt.CharToByteSymbol
fontcharset.dialoginput.0=sun.io.CharToByteMS932 fontcharset.dialoginput.1=sun.io.CharToByteMS932 fontcharset.dialoginput.2=sun.io.CharToByteGBK fontcharset.dialoginput.3=sun.io.CharToByteMS949 fontcharset.dialoginput.4=sun.awt.windows.CharToByteWingDings fontcharset.dialoginput.5=sun.awt.CharToByteSymbol
fontcharset.serif.0=sun.io.CharToByteMS932 fontcharset.serif.1=sun.io.CharToByteMS932 fontcharset.serif.2=sun.io.CharToByteGBK fontcharset.serif.3=sun.io.CharToByteMS949 fontcharset.serif.4=sun.awt.windows.CharToByteWingDings fontcharset.serif.5=sun.awt.CharToByteSymbol
fontcharset.sansserif.0=sun.io.CharToByteMS932 fontcharset.sansserif.1=sun.io.CharToByteMS932 fontcharset.sansserif.2=sun.io.CharToByteGBK fontcharset.sansserif.3=sun.io.CharToByteMS949
fontcharset.sansserif.4=sun.awt.windows.CharToByteWingDings fontcharset.sansserif.5=sun.awt.CharToByteSymbol
fontcharset.monospaced.0=sun.io.CharToByteMS932 fontcharset.monospaced.1=sun.io.CharToByteMS932 fontcharset.monospaced.2=sun.io.CharToByteGBK fontcharset.monospaced.3=sun.io.CharToByteMS949 fontcharset.monospaced.4=sun.awt.windows.CharToByteWingDings fontcharset.monospaced.5=sun.awt.CharToByteSymbol
# Exclusion Ranges # exclusion.dialog.0=0100-20ab,20ad-ffff exclusion.dialoginput.0=0100-20ab,20ad-ffff exclusion.serif.0=0100-20ab,20ad-ffff exclusion.sansserif.0=0100-20ab,20ad-ffff exclusion.monospaced.1=0100-20ab,20ad-ffff
# Text Input Character Set # inputtextcharset=SHIFTJIS_CHARSET
# The file font.properties ends here