Сочетание арабского и английского вызывает проблемы в JTextArea (Java) - PullRequest
1 голос
/ 25 ноября 2008

У меня есть JTextArea, который отображает HTML арабской веб-страницы. По сути, это смесь английского и арабского языков. В JTextArea, для столбцов которого установлено значение 30, определенный текст просто исчезает, а не переносится должным образом. Странно то, что если я скопирую невидимый текст и вставлю его в Блокнот, то смогу увидеть его в Блокноте. Если я изменю количество столбцов на 40, все отображается нормально. Есть идеи?

Ответы [ 2 ]

1 голос
/ 25 ноября 2008

Смотрите на скриншот проблемы:

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

Эли, спасибо за ответ. Не уверен, что я правильно объяснил проблему. Слева на скриншоте - JTextArea. Справа находится выборка из JTextArea, вставленная в Блокнот. Теперь это имеет больше смысла?

0 голосов
/ 25 ноября 2008

Это 30-й персонаж, который исчезает? Это возможно из-за сценария, что JTextArea не может правильно отобразить арабские символы. Так что он считает персонажей правильно, но не понимает, что они занимают больше места. Поддержка таких шрифтов невелика, поэтому вы можете написать собственный рендерер для JTextArea, чтобы справиться с этим (так что вы можете вручную учесть необходимый объем пространства, требуемого для каждого символа на арабском языке и соответствующим образом настроить перенос строки).

...