unicode中的两种阿拉伯文字体表示法

unicode中的两种阿拉伯文字体表示法,unicode,arabic,typography,arabic-support,Unicode,Arabic,Typography,Arabic Support,我正在使用阿拉伯语编写一个应用程序,我发现用阿拉伯语编写相同的文本通常有两种方法。我无法理解为什么会发生这种情况,以及如何将其中任何一个转换为另一个以开发一致的UI 下面是一个阿拉伯语短语的例子 ا اَﻟﻠّﻬُﻢﱠ ﺻَﻞﱢ ﻋَﻠﻰ ﻣُﺤَﻤﱠﺪٍ وَ ﺁلِ ﻣُﺤَﻤﱠﺪٍ 我看到它在预览中看起来是一样的,但它是不同的,我想达到相同的结果 下面是我如何在注释中区分这两个 它们在我的浏览器中看起来不一样,按发布顺序获取每一个的Unicode代码点 U+627 U+644 U+644

我正在使用阿拉伯语编写一个应用程序,我发现用阿拉伯语编写相同的文本通常有两种方法。我无法理解为什么会发生这种情况,以及如何将其中任何一个转换为另一个以开发一致的UI

下面是一个阿拉伯语短语的例子

ا

اَﻟﻠّﻬُﻢﱠ ﺻَﻞﱢ ﻋَﻠﻰ ﻣُﺤَﻤﱠﺪٍ وَ ﺁلِ ﻣُﺤَﻤﱠﺪٍ

我看到它在预览中看起来是一样的,但它是不同的,我想达到相同的结果

下面是我如何在注释中区分这两个


它们在我的浏览器中看起来不一样,按发布顺序获取每一个的Unicode代码点

U+627 U+644 U+644 U+651 U+647 U+64F U+645 U+651 U+64E U+20 U+635 U+64E U+644 U+651 U+650 U+20 U+639 U+64E U+644 U+64E U+649 U+20 U+645 U+64F U+62D U+64E U+645 U+651 U+64E U+62F U+64D U+20 U+648 U+64E U+622 U+644 U+650 U+20 U+645 U+64F U+62D U+64E U+645 U+651 U+64E U+62F U+64D

U+627 U+64E U+FEDF U+FEE0 U+651 U+FEEC U+64F U+FEE2 U+FC60 U+20 U+FEBB U+64E U+FEDE U+FC62 U+20 U+FECB U+64E U+FEE0 U+FEF0 U+20 U+FEE3 U+64F U+FEA4 U+64E U+FEE4 U+FC60 U+FEAA U+64D U+20 U+648 U+64E U+20 U+FE81 U+644 U+650 U+20 U+FEE3 U+64F U+FEA4 U+64E U+FEE4 U+FC60 U+FEAA U+64D
检查这些,第一行的前三个字母是ALEF,LAM,LAM,第二行是ALEF,FATHA,LAM的首字母形式


这是奇怪的,因为初始形式不应该出现在单词的中间。看起来您的数据没有正确清理。除了检查每个字母外,我不知道有什么方法可以解决这个问题。

好吧,你的浏览器没有正确显示这两个字母,而是用不同的字体。事实上,问题不仅在于LAM的首字母形式或完整形式,还在于每个字体中有两个阿拉伯字符序列。对我来说,这两行文本是同一字体。然而,我刚刚将它们粘贴到Libra Office中,发现第二行中有一些文本方向覆盖字符
它们在我的浏览器中看起来不同