LWUIT: проблема в отображении арабских слов? - PullRequest
0 голосов
/ 30 сентября 2010

Привет, у меня есть проблема с отображением арабских слов в LWUIT, символы арабских слов разделены и перепутаны, но это верно для nokia, как я могу решить эту проблему?спасибо

1 Ответ

0 голосов
/ 22 мая 2011

В растровых шрифтах формирование арабских глифов не работает из-за уникальных свойств языка. Вам необходимо использовать системные шрифты (которые не используются по умолчанию в некоторых темах LWUIT), в системных шрифтах поддержка арабского языка зависит от устройства / симулятора, не все из которых поддерживают правильную настройку двунаправленного текста.

Обратите внимание, что некоторые старые устройства Sony Erricson, а также некоторые другие устройства, такие как плохо локализованные устройства Android (например, Nexus One), не имеют надлежащей поддержки двунаправленного текста. Это означает, что их родные виджеты реализуют bidi вместо их drawString реализации. К сожалению, нет способа обнаружить эту ошибку во время выполнения, поэтому LWUIT не может легко ее обойти!

Единственное решение - создать версию специально для таких устройств, которая вручную выполняет алгоритм двунаправленного текста в коде drawString, это означает замену реализации для этих устройств реализацией, которая просто переопределяет метод drawString и выполняет алгоритм двунаправленного текста при визуализации строки. Биди-алгоритм LWUIT представлен в классе Display.

...