日语在JTextArea

时间:2013-03-04 15:35:45

标签: java database jtextarea true-type-fonts

我有一个日语单词数据库。另外我有算法读取这些单词并将它们放入JTextArea。 问题是我看到矩形而不是日本标志。 但是当我从JTA复制这样一组矩形(ctrl + c)并将它们放入例如。命令输入TotalCommander或Winword文件,出现的标志正确显示。但只能在Win7下。 因为我在winXP下的虚拟机上运行Eclipse,所以我也能够复制矩形来命令winXP下的TotalCommander输入。我的Java应用程序中仍然存在矩形。 这意味着在JTA中有关于特定标志的信息,但JTA无法解释此信息。

当然我已经安装了正确的字体。

我尝试过很多字体:

textArea.setFont(new Font(blablabla)); 

和类似,但没有影响。 我该怎么办?

1 个答案:

答案 0 :(得分:2)

您的JTextArea的问题很可能是,您使用的字体不适用于UTF-8&日本。字体不提供从UTF-8值到字符的映射表。即0x41是ASCII,也是UTF-8,甚至是SHIFT-JIS字母' A' - 但是您只是链接的字体,将0x41解析为汉字字符。并且整个字体根本不包含平假名和片假名字符 - 请参阅网站上的评论部分,您可以从here获得此字体。

  

使用ChapMap之后,它有一个WSIfonts TAG并且不支持所有中文字符,它只有90个字符,并且除了Caps之外每个字符分配1个字符。

它是中文字体 - 不是日文字体。但它甚至不能提供所有中文字符,并且没有包含有用的映射表 - 所以它很无用。

尝试使用另一种字体 - 如果它包含真正的日语字符并且为UTF-8提供适用的映射表,它应该可以正常工作。

你可以找到可行的字体,即here