阿拉伯文顯示

2021-10-20 12:18:11 字數 708 閱讀 6889

在很多嵌入式系統產品中,需要支援阿拉伯語言,可很多人卻為之煩惱。

原因: 1. 不知阿拉伯文的排版規則 (連寫變形規則)。

2. 沒法找到支援阿拉伯文的字型檔。

一。 阿拉伯文的排版規則。

請參閱: 阿拉伯文排版規則詳解

二。 阿拉伯文字型檔。   

阿拉伯文字型檔生成工具: guitool

首先,阿拉伯文的unicode編碼範圍(共三段): 

0600-06ff:阿拉伯文 (arabic)

fb50-fdff:阿拉伯表達形式a (arabic presentation form-a)

fe70-feff:阿拉伯表達形式b (arabic presentation form-b)

目前很多人對阿拉伯文的編碼範圍可能還不是太了解,故生成字型檔的點陣資訊只涵蓋了第一段,故無法正確支援阿拉伯文顯示。由於連寫規則會將第一段中的某些編碼轉換成第三段中編碼. 詳見阿拉伯文排版規則

所以我們只要將阿拉伯文上述三段編碼範圍的字元全部生成點陣資訊,即可支援阿拉伯文顯示。    

阿拉伯文字型檔圖示:

阿拉伯文模擬預覽效果

阿拉伯字母及阿拉伯文排版規則

阿拉伯語屬阿非羅 亞細亞語系 閃含語系 閃語族。詞一般由3個原生字母構成,可新增字首,字尾,或使詞的內部音位發生變化和插入其它音位構成新詞。阿拉伯共有28個字母,都是子音字母,每個字母只代表乙個子音音素,每個音素只用乙個字母表示。對應unicode 0x060c 0x06fe。阿拉伯語共有8個母音,...

Unity遊戲ugui適配阿拉伯文本顯示

首先介紹下阿拉伯文,阿拉伯文的顯示是右對齊 從右到左的,不僅是語序從右到左,就連乙個單詞的每個字元都是從右到左顯示的。打個比方,用大寫英文本母來代表阿拉伯字元,我們理解的 abcd efg 約定下文都用斜粗體表示我們理解的順序 在阿拉伯文中就會顯示成 gfe dcba 另外,當阿拉伯文和英文 數字混...

阿拉伯數值轉中文數值

public static void main string args string chines string level string string 607030030 不算進製,直接將阿拉伯數值轉中文數字 for int i 0 i nums.length i system.out.print...