我正在尝试组合/连接来自字符串的阿拉伯字母。
这种语言和其他语言的问题在于每个字母有4种显示方式,隔离,初始,中间和最终。
我已经阅读了很多关于这个问题的内容,但是不知道是否有解决方案。
我有这样的文字:مرحبا(意思是“Marhaba” - 你好),从右到左阅读。
我正在为另一个程序开发一个插件,它给了我相同的字符串连接,但后面这样:ابحرم(如果我们从LTR读取它没关系,但它应该是RTL),所以我将这些字符分开并将它们反转,但是当我在屏幕上绘制它们(图形应用程序)时,它们会以它们的隔离形式显示,如下所示:مرحبا从RTL读取不错但不是连接。
所以我尝试了很多东西让它们以连接的形式显示在屏幕上,但是没有让它工作,是否有一种简单的方法可以用来在显示时连接它们?
提前致谢。
我的反转字母的代码是:
TextElementEnumerator enumerator = StringInfo.GetTextElementEnumerator(stringFromApp);
List<string> elements = new List<string>();
while (enumerator.MoveNext())
elements.Add(enumerator.GetTextElement());
elements.Reverse();
string reversed = string.Concat(elements);
App.textObject.text = reversed;