專利名稱:ARM-Linux系統(tǒng)中文輸入法漢字庫生成方法
技術(shù)領(lǐng)域:
本發(fā)明涉及嵌入式ARM-Li皿x系統(tǒng)開發(fā)領(lǐng)域,特別是L、 S波段衛(wèi)星移動通信便攜式移動 終端的ARM-Linux系統(tǒng)中文輸入法漢字庫生成方法。
背景技術(shù):
目前,ARM板已普遍應(yīng)用于手機、玩具等電器產(chǎn)品中。特別是嵌入式Li皿x技術(shù)與ARM板 相結(jié)合,以其開放的源代碼、低廉的價格、方便的開發(fā)環(huán)境受到了眾多開發(fā)廠家的青睞。然 而,在ARM系統(tǒng)上安裝的嵌入式Li皿x系統(tǒng)中,雖然支持漢字字符的顯示,但并未提供任何中 文漢字的輸入方法,以至,用戶不能通過ARM系統(tǒng)輸入任何漢字。顯然,這樣的平臺完全不 能滿足L、 S波段衛(wèi)星移動通信便攜式移動終端,對用戶信息輸入的功能要求。
在一些比較成熟的嵌入式系統(tǒng)和PC機上,均提供一種或者多種中文輸入法,以方便用戶 輸入中文信息。但是這些系統(tǒng)的中文輸入法程序由于不能與ARM指令系統(tǒng)兼容,因此不能簡 單復(fù)制到ARM系統(tǒng)中直接使用。雖然在ARM系統(tǒng)上開發(fā)的程序中需要使用漢字提示時,可以通 過PC機上編輯這些漢字,然后通過交叉編譯器生成可執(zhí)行程序文件后,拷貝至ARM系統(tǒng)。當 程序在ARM平臺上運行后,屏幕上就可以顯示出這些漢字提示,但要在程序中直接輸入漢字 數(shù)據(jù)則無能為力了。顯然,這種情況極大地限制了ARM系統(tǒng)在實際中的應(yīng)用。
設(shè)計ARM系統(tǒng)上的中文輸入法過程中,中文漢字庫是中文輸入法實現(xiàn)的基礎(chǔ),中文漢字 庫的設(shè)計關(guān)系到整個中文輸入法的性能。優(yōu)秀的中文漢字庫應(yīng)該在保證中文輸入法正確的前 提下,使中文輸入法的設(shè)計與實現(xiàn)更加簡單和高效。
在需要自己設(shè)計輸入法的系統(tǒng)中,比如L、 S波段衛(wèi)星移動通信便攜式移動終端使用的嵌 入式Li皿x系統(tǒng)中,目前沒有成熟的用于漢字輸入的中文漢字庫。
發(fā)明內(nèi)容
本發(fā)明的目的是克服現(xiàn)有技術(shù)的缺陷,提供一種主要服務(wù)于L、 S波段衛(wèi)星移動通信便攜 式移動終端系統(tǒng)中的中文輸入法支持的漢字庫生成方法。 本發(fā)明的目的是這樣實現(xiàn)的
ARM-Linux系統(tǒng)中文輸入法漢字庫生成方法,本方法的ARM-Linux系統(tǒng)中文輸入法漢字庫 通過以下五個步驟生成
1、在Windows系統(tǒng)PC機中進行漢字采集采集程序?qū)凑諆?nèi)置的拼音組合規(guī)則,
4自動產(chǎn)生各種漢語拼音組合,并將組成這些拼音組合的字母自動發(fā)送到PC系統(tǒng)的中文全拼輸 入法程序,用程序模擬鍵盤按鍵信息輸入,程序在運行期間將把拼音信息和捕獲的PC系統(tǒng)中 文全拼輸入法輸出的對應(yīng)漢字編碼信息一起保存在一個文件中,直到將所有的漢語拼音信息 和漢字信息記錄完成,程序?qū)⒆詣咏Y(jié)束運行。
2、 按照既定的漢字庫格式初始化漢字庫以上述步驟l所得到的漢字采集文件為
輸入,按照ARM-Linux系統(tǒng)準備開發(fā)的中文全拼輸入法的功能要求確定編碼組織形式,對初 始化漢字庫進行填充,生成初級漢字庫。
3、 確定ARM-Linux中無法正常顯示的漢字將生成的初級漢字庫通過網(wǎng)絡(luò)傳輸?shù)?ARM-Linux系統(tǒng)中,然后,在ARM-Linux系統(tǒng)中,按照輸入法可以訪問的形式,將漢字庫中的 拼音和對應(yīng)漢字自動遍歷并在ARM-Linux系統(tǒng)顯示出來,ARM-Linux中無法正常顯示的漢字的 十六進制編碼為"EF BF BD",將包括該編碼信息的拼音和漢字信息保存成為一個新的文檔 ;由于ARM-Linux中對任何無法正常顯示的漢字編碼都將統(tǒng)一用十六進制的"EF BF BD"表 達,而能夠正常顯示的漢字編碼則直接使用其對應(yīng)的唯一一個UTF8編碼表達,因此我們通過 捕獲顯示漢字的編碼,就可以非常容易地確定哪些漢字在ARM-Linux中不能正常顯示。
4、 剔除無法正常顯示的漢字將步驟3所得到的記錄有ARM-Linux中無法正常顯示 的漢字文檔信息通過網(wǎng)絡(luò)傳輸回PC機系統(tǒng),并以該文檔和初級漢字庫為輸入,運行程序自動 剔除在ARM-Linux中無法正常顯示的全部漢字,同時重新生成一個全部由ARM-Linux中可以正 常顯示的漢字組成,符合步驟l所產(chǎn)生的文件格式的新文件,以便在下一步生成一個 ARM-Linux環(huán)境中可用的漢字庫。
5、 按照既定的漢字庫格式生成最終漢字庫以已剔除全部無法顯示漢字的文件為 輸入,按照ARM-Linux系統(tǒng)準備開發(fā)的中文全拼輸入法的功能要求確定編碼組織形式,生成 最終可以在目標系統(tǒng)中正常使用的漢字庫,這樣全拼輸入法使用的漢字庫生成完成。
由于在Windows環(huán)境下可以利用其豐富的資源進行方便的編程取得漢字信息和生成既定 格式的漢字庫,但只有在ARM-Linux環(huán)境下才可以正確的確定哪些漢字無法正常顯示,即非 法漢字。所以漢字庫的創(chuàng)建流程分為在Windows環(huán)境下和ARM-Linux環(huán)境下的處理。
其中,在步驟l中所述程序模擬鍵盤按鍵信息輸入時可利用漢語拼音的特點,將漢語拼 音中的聲母和韻母進行組合輸入,輸入拼音時將所有的聲母作為聲母源單元,將所有韻母都 作為韻母輸入源單元,每次輸入的拼音都為一個聲母源單元和一個韻母源單元的組合。漢語 拼音中聲母的個數(shù)為23個,其中雙字母聲母為3個,其余為單字母聲母;韻母個數(shù)為35個, 其中單字母韻母6個,雙字母韻母13個,三字母韻母12個,四字母韻母4個,可以計算出需要輸入鍵盤鍵碼的次數(shù)為2268次。采用聲母韻母組合輸入拼音的輸入正確率提高到了 19.2239%,這比無序的輸入字母進行漢字采集提高了1415倍。在主頻為2. OGHz的普通PC機上 處理如此多的鍵盤輸入,經(jīng)多次實驗測得向緩存輸入漢字和記錄漢字到指定文件的總共時間 約為5.5小時,共采集了456個拼音,這些拼音共記錄了61609個漢字。由分析可知,在采集 漢字的過程中本文提出的使用聲母和韻母組合后采集漢字的方法提高輸入的正確率,大大減 少了采集漢字信息的輸入次數(shù),是一種優(yōu)秀的漢字采集方法。 本發(fā)明的有益效果
本發(fā)明的ARM-Linux系統(tǒng)中文輸入法漢字庫生成方法實現(xiàn)了對L、 S波段衛(wèi)星移動通信便 攜式移動終端系統(tǒng)中的中文輸入法的支持,除此之外,在其他缺少中文輸入法的操作平臺中 ,也可以利用該項目生成的漢字庫,自行開發(fā)中文全拼輸入法,為其系統(tǒng)提供中文輸入支持
本發(fā)明將通過例子并參照附圖的方式說明,其中
圖l是本發(fā)明的流程示意圖。
具體實施例方式
本說明書中公開的所有特征,或公開的所有方法或過程中的步驟,除了互相排斥的特征 和/或步驟以外,均可以以任何方式組合。
本說明書(包括任何附加權(quán)利要求、摘要和附圖)中公開的任一特征,除非特別敘述, 均可被其他等效或具有類似目的的替代特征加以替換。S卩,除非特別敘述,每個特征只是一 系列等效或類似特征中的一個例子而已。
本實施例的ARM-Linux系統(tǒng)中文輸入法漢字庫生成方法,如圖1所示,通過以下五個步 驟生成ARM-Linux系統(tǒng)中文輸入法漢字庫
1、在Windows系統(tǒng)PC機中進行漢字采集采集程序?qū)凑諆?nèi)置的拼音組合規(guī)則,自動 產(chǎn)生各種漢語拼音組合,并將組成這些拼音組合的字母自動發(fā)送到PC系統(tǒng)的中文全拼輸入法 程序,用程序模擬鍵盤按鍵信息輸入,程序在運行期間將把拼音信息和捕獲的PC系統(tǒng)中文全 拼輸入法輸出的對應(yīng)漢字編碼信息一起保存在一個文件中,直到將所有的漢語拼音信息和漢 字信息記錄完成,程序?qū)⒆詣咏Y(jié)束運行。程序模擬鍵盤按鍵信息輸入時利用漢語拼音的特點 ,將漢語拼音中的聲母和韻母進行組合輸入,輸入拼音時將所有的聲母作為聲母源單元,將 所有韻母都作為韻母輸入源單元,每次輸入的拼音都為一個聲母源單元和一個韻母源單元的 組合。漢字信息采集的時候,存儲拼音和漢字信息的格式如下文件的每一行開頭為本行漢
6字的拼音組標號,后邊為漢字拼音元,漢字拼音元為漢字加拼音的格式,如"啊a0"," 啊"為漢字,"a"為拼音,"0"是"a"這個拼音在使用的輸入法中對應(yīng)的序號。取得拼 音和對應(yīng)的漢字信息之后,這些信息無法使中文輸入法方便地使用,因此需要通過第2步將 這些信息加工為指定格式的漢字和拼音對應(yīng)關(guān)系。
2、 按照既定的漢字庫格式初始化漢字庫以上述步驟l得到的漢字采集文件為輸入, 采用Unicode編碼形式,對初始化漢字庫進行填充,生成初級漢字庫。填充空的漢字庫時, 將采集漢字生成的漢字文件信息按行分解開來成為漢字信息單元,在每個單元的開頭有一個 組號,找到第一個組號為"0"的單元時,將該組拼音填入到第一個拼音入口的拼音信息中
,記下來該漢字庫中正文的位置,將該位置信息添加到拼音入口的對應(yīng)結(jié)構(gòu)。然后將該組的 所有的漢字部分添加到漢字庫中,并做好漢字個數(shù)的記錄,最后將該漢字個數(shù)記錄寫入漢字 庫拼音入口的字數(shù)統(tǒng)計處。將這一組的漢字和拼音信息提取并寫入漢字庫以后,再判斷下一 組的漢字信息,此時如果組號不為"0",則繼續(xù)添加本組漢字信息到漢字庫的正文部分, 并將漢字字數(shù)統(tǒng)計信息進行更新。依照此操作,找到下一組組號為"0"的漢字信息單元, 將拼音入口的序號向后移動一個,繼續(xù)以上的操作。直到找到漢字采集文件的最后一個漢字
3、 確定ARM-Linux中無法正常顯示的漢字將生成的初級漢字庫通過網(wǎng)絡(luò)傳輸?shù)?ARM-Linux系統(tǒng)中,在ARM-Linux系統(tǒng)中,按照輸入法可以訪問的形式,將漢字庫中的拼音和 對應(yīng)漢字自動遍歷并在ARM-Linux系統(tǒng)顯示出來,ARM-Linux中無法正常顯示的漢字的十六進 制編碼為"EF BF BD",將包括該編碼信息的拼音和漢字信息保存成為一個新的文檔。
4、 剔除無法正常顯示的漢字將步驟3得到的ARM-Linux中無法正常顯示的漢字文檔信 息通過網(wǎng)絡(luò)傳輸回PC機系統(tǒng),遍歷初級漢字庫,將ARM-Linux中無法正常顯示的漢字文檔中 的漢字剔除,剔除非法漢字的同時,為了使下一步生成真正ARM-Linux可用的漢字庫,應(yīng)將 剔除非法漢字后的文件按照采集漢字后生成的文件格式進行編輯。
5、 按照既定的漢字庫格式生成最終漢字庫以已剔除全部無法顯示漢字的文件為輸入 ,按照ARM-Linux系統(tǒng)準備開發(fā)的中文全拼輸入法的功能要求確定編碼組織形式,生成最終 可以在目標系統(tǒng)中正常使用的漢字庫,這樣全拼輸入法使用的漢字庫生成完成。
本發(fā)明并不局限于前述的具體實施方式
。本發(fā)明擴展到任何在本說明書中披露的新特征 或任何新的組合,以及披露的任一新的方法或過程的步驟或任何新的組合。
權(quán)利要求
1.ARM-Linux系統(tǒng)中文輸入法漢字庫生成方法,其特征在于本方法的ARM-Linux系統(tǒng)中文輸入法漢字庫通過以下五個步驟自動生成(1)在Windows系統(tǒng)PC機中進行漢字采集采集程序?qū)凑諆?nèi)置的拼音組合規(guī)則,自動產(chǎn)生各種漢語拼音組合,并將組成這些拼音組合的字母自動發(fā)送到PC系統(tǒng)的中文全拼輸入法程序,用程序模擬鍵盤按鍵信息輸入,程序在運行期間將把拼音信息和捕獲的PC系統(tǒng)中文全拼輸入法輸出的對應(yīng)漢字編碼信息一起保存在一個文件中,直到將所有的漢語拼音信息和漢字信息記錄完成,程序?qū)⒆詣咏Y(jié)束運行;(2)按照既定的漢字庫格式初始化漢字庫以上述步驟(1)所得到的漢字采集文件為輸入,按照ARM-Linux系統(tǒng)準備開發(fā)的中文全拼輸入法的功能要求確定編碼組織形式,對初始化漢字庫進行填充,生成初級漢字庫;(3)確定ARM-Linux中無法正常顯示的漢字將生成的初級漢字庫通過網(wǎng)絡(luò)傳輸?shù)紸RM-Linux系統(tǒng)中,然后,在ARM-Linux系統(tǒng)中,按照輸入法可以訪問的形式,將漢字庫中的拼音和對應(yīng)漢字自動遍歷并在ARM-Linux系統(tǒng)顯示出來,ARM-Linux中無法正常顯示的漢字的十六進制編碼為“EPBPBD”,將包括該編碼信息的拼音和漢字信息保存成為一個新的文檔;(4)剔除無法正常顯示的漢字將步驟(3)所得到的記錄有ARM-Linux中無法正常顯示的漢字文檔信息通過網(wǎng)絡(luò)傳輸回PC機系統(tǒng),并以該文檔和初級漢字庫為輸入,運行程序自動剔除在ARM-Linux中無法正常顯示的全部漢字,同時重新生成一個全部由ARM-Linux中可以正常顯示的漢字組成,符合步驟(1)所產(chǎn)生的文件格式的新文件,以便在下一步生成一個ARM-Linux環(huán)境中可用的漢字庫;(5)按照既定的漢字庫格式生成最終漢字庫以已剔除全部無法顯示漢字的文件為輸入,按照ARM-Linux系統(tǒng)準備開發(fā)的中文全拼輸入法的功能要求確定編碼組織形式,生成最終可以在目標系統(tǒng)中正常使用的漢字庫,這樣全拼輸入法使用的漢字庫生成完成。
2.根據(jù)權(quán)利要求l所述的ARM-Linux系統(tǒng)中文輸入法漢字庫生成方法 ,其特征在于所述程序模擬鍵盤按鍵信息輸入時利用漢語拼音的特點,將漢語拼音中的聲母和韻母進行組合輸入,輸入拼音時將所有的聲母作為聲母源單元,將所有韻母都作為韻母 輸入源單元,每次輸入的拼音都為一個聲母源單元和一個韻母源單元的組合。
全文摘要
本發(fā)明的ARM-Linux系統(tǒng)中文輸入法漢字庫生成方法,包括以下五個步驟在Windows系統(tǒng)PC機中進行漢字采集;對初始化漢字庫進行填充,生成初級漢字庫;將生成的初級漢字庫通過網(wǎng)絡(luò)傳輸?shù)紸RM-Linux系統(tǒng)中,確定并標識無法識別的漢字;在PC機系統(tǒng)中對初級漢字庫中ARM-Linux系統(tǒng)無法識別的漢字進行剔除;生成完整漢字庫;本發(fā)明的ARM-Linux系統(tǒng)中文輸入法漢字庫生成方法實現(xiàn)了對L、S波段衛(wèi)星移動通信便攜式移動終端系統(tǒng)中的中文輸入法的支持,除此之外,在其他缺少中文輸入法的操作平臺中,也可以利用該項目生成的漢字庫,自行開發(fā)中文全拼輸入法,為其系統(tǒng)提供中文輸入支持。
文檔編號G06F3/023GK101673258SQ20091030913
公開日2010年3月17日 申請日期2009年10月30日 優(yōu)先權(quán)日2009年10月30日
發(fā)明者何戎遼, 倪國超, 劉鐵華, 慧 宋, 婷 張, 輝 朱, 殷知磊, 勇 王, 王小玲, 肖躍先 申請人:成都林海電子有限責任公司