混合使用阿拉伯语和英语会导致JTextArea(Java)出现问题

时间:2008-11-25 14:55:01

标签: java swing internationalization bidi

我有一个显示阿拉伯语网页HTML的JTextArea。所以它基本上是英语和阿拉伯语的混合。在JTextArea中,将列设置为30,某些文本只会消失而不是正确包装。奇怪的是,如果我复制不可见的文本并将其粘贴到记事本中,那么我可以在记事本中看到它。如果我将列数更改为40,一切都显示正常。有任何想法吗?

2 个答案:

答案 0 :(得分:1)

请参阅此问题的屏幕截图:

http://i.stack.imgur.com/lErjB.jpg

艾莉,谢谢你的回应。不确定我是否正确解释了问题。屏幕截图左侧是JTextArea。右侧是从粘贴到记事本中的JTextArea中选择的。这现在更有意义了吗?

答案 1 :(得分:0)

它是消失的第30个角色吗?由于脚本,JTextArea无法正确呈现阿拉伯字符。所以它正确地计算了角色,但没有意识到他们占用了更多的空间。对这些字体的支持并不是很好,因此您可能希望为JTextArea编写一个自定义渲染器来处理此问题(因此您可以手动考虑阿拉伯语中每个字符所需的适当空间量并相应地调整换行)。