3

几天来,我一直在网上潜伏,试图寻找一种代码实现(最好是 Java)来翻转 Bidi 文本,以便它可以在不支持 Bidi 文本的平台内正确显示。(如AndEngine)。

最佳解决方案是一种方法,我会向它提供希伯来语文本,它会返回翻转的内容。我可以自己做到这一点,但是一旦混合了英语和希伯来语文本的字符串,它就会变得复杂,而且我认为实现它对我来说会很愚蠢,因为可能已经有更好的实现了。

我发现最接近的是这个 Unicode 算法 -

http://www.unicode.org/reports/tr9/

http://www.unicode.org/Public/PROGRAMS/BidiReferenceJava/

这太复杂了,太大了,并没有完成所有的工作。

Java中还有这个Bidi类

http://docs.oracle.com/javase/7/docs/api/java/text/Bidi.html

但它只提供了简单的方法来分析 Bidi 文本。

我很确定这是一个常见问题,因为不幸的是许多平台和游戏引擎并不完全支持双向文本。

谢谢!

4

1 回答 1

3

试试重症监护室

ICU 是一套成熟的、广泛使用的软件应用程序集C/C++Java libraries为软件应用程序提供 Unicode 和全球化支持。

ICU 具有广泛的可移植性,并在所有平台和C/C++&之间为应用程序提供相同的结果Java software

或者

GNU FriBidi for c++

于 2012-05-07T11:25:56.090 回答