android - How can I automatically "reshape" complex scripts? -


problem:

i'm trying display small amount of text using complex scripts such arabic , bengali on mobile devices (specifically android, blackberry phones, , blackberry playbook). (the app allergy traveler) these devices both fail correctly display text, different reasons.

on android , playbook, can supply font in case characters display, characters not connected correctly. each character displays without considering context.

on blackberry, device doesn't have appropriate fonts. can supply font, font file far exceeds maximum font size (70kb).

proposed solution:

i think process of correctly using context display word called reshaping. presumably, takes text , returns alternative set of characters display. proposed solution reshaping in advance. on android, ensure text correctly uses context, , on blackberry, allow me remove unused characters, , reduce font size.

question:

are there apis "reshaping" or other suggestions? i'm willing use technology on windows or linux (eg win32 api, perl, python, java, ...)

thanks suggestions.

for reshaping arabic on android possible using amr gawish's arabic reshaper framework, check out http://bar.amr-gawish.com/. however, should note although reshapes , joins normal arabic letters , text correctly, isn't able join arabic letters if text contains diacritics.

i have noticed app in android marketplace joins/reshapes arabic text diacritics i'm not sure they've used so, may perhaps own internal framework. i'm interested in finding reshaping apis, in particular ones can deal arabic diacritics too.

hope above link help! let know if find better.

edit: following can diacritics - https://github.com/ahmedessam/better-arabic-reshaper


Comments