其他分享
首页 > 其他分享> > android-如何自动“重塑”复杂的脚本?

android-如何自动“重塑”复杂的脚本?

作者:互联网

问题:

我正在尝试在移动设备(特别是Android,BlackBerry手机和BlackBerry PlayBook)上使用复杂的脚本(例如阿拉伯语和孟加拉语)显示少量文本. (该应用程序是Allergy Traveler)这些设备都无法正确显示文本,但是原因不同.

在Android和PlayBook上,我可以提供一种字体,在这种情况下会显示字符,但字符连接不正确.每个字符的显示均不考虑上下文.

在BlackBerry上,设备没有适当的字体.我可以提供字体,但是字体文件远远超出了最大字体大小(70kB).

建议的解决方案:

我认为正确使用上下文显示单词的过程称为重塑.据推测,这将获取文本并返回另一组要显示的字符.我建议的解决方案是提前进行此重塑.在Android上,这将确保文本正确使用上下文,而在BlackBerry上,这将使我能够删除未使用的字符并减小字体大小.

题:

是否有任何API可以执行此“重塑”操作或其他建议?我愿意在Windows或Linux上使用任何技术(例如Win32 API,Perl,Python,Java等)

感谢所有的建议.

解决方法:

要在Android上重塑阿拉伯语,可以使用Amr Gawish的阿拉伯语重塑框架,请查看http://bar.amr-gawish.com/.
但是,您应该注意,尽管它可以正确地重塑和连接普通的阿拉伯字母和文本,但是如果文本包含变音符号,它就无法连接阿拉伯字母.

我注意到android市场上的一个应用程序通过变音符号连接/重塑阿拉伯文本,但我不确定他们过去是怎么做的,可能是他们自己的内部框架.我也对寻找重塑API感兴趣,特别是那些也可以处理阿拉伯变音符号的API.

希望以上链接对您有所帮助!让我们知道您是否找到更好的选择.

编辑:以下也可以做变音符号-https://github.com/AhmedEssam/Better-Arabic-Reshaper

标签:unicode,blackberry,blackberry-playbook,android
来源: https://codeday.me/bug/20191208/2091700.html