java - 寻找一种翻转比迪语(希伯来语)文本的方法,以便在 AndEngine 中正确显示

标签 java android andengine bidi

几天来,我一直在网上潜伏,试图寻找用于翻转双向文本的代码实现(最好是 Java),以便它可以在不支持即时可用的双向文本的平台内正确显示。 (例如 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文本。

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

谢谢!

最佳答案

尝试 ICU

ICU 是一组成熟的、广泛使用的 C/C++Java 库,为软件应用程序提供 Unicode 和全局化支持。

ICU 具有广泛的可移植性,在所有平台上以及在 C/C++Java 软件 之间为应用程序提供相同的结果。

或者

GNU FriBidi对于 C++

关于java - 寻找一种翻转比迪语(希伯来语)文本的方法,以便在 AndEngine 中正确显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10154961/

相关文章:

java - 如何优化动画?

android - 按下按钮元素 ListView

java - StringTokenizer 按句号拆分,即使它不在分隔符列表中

java - 如何对来自 AssertJ 的异常消息进行分组以获得更好的报告?

android - 为什么私有(private)集不适用于 MutableLiveData?

java - andengine setPosition 不起作用

android - 如何在andengine中使用物理学画线

java - Android:同时使用 adjustPan 和 adjustResize 不起作用,但我需要两者

java - 在 Minecraft 1.18 中使用 MCP 在屏幕上渲染文本

java - 在 Android 中捕获双击