移植多國語言

2021-05-08 00:16:45 字數 3485 閱讀 6484

二、        移植zi輸入法

1、開啟zi開關

1)檔案:..//make//ztenc26_07b_gprs.mak

修改輸入法為mmi_zi;

input_method = mmi_zi                # input methods: none, mmi_t9, or mmi_zi

2)在mmi_features.h裡面開啟相應的zi語言輸入法巨集開關,形如__mmi_zi_prc_eng

lish__。

2、新增zi**

..//zi  

zi目錄新增到工程根目錄.

3、新增zi的編譯選項

工程檔案要最終通過makefile編譯成目標檔案,每個模組的編譯路徑都寫入該模組的編譯目錄中。

..//make//zi  包含檔案:

zi.def

zi.inc

zi.lis

zi.pth

從上面的指令碼中可以看到,zi輸入法的庫檔案的存放位置:

c://ztenc26_07b_v4//vendor//inputmethod//zi//project//plutommi//v6_official//lib

標頭檔案存放位置:

c://ztenc26_07b_v4//vendor//inputmethod//zi//project//plutommi//v6_official//inc

因此我們開始新增zi輸入法的庫檔案和標頭檔案到上面的目錄,如果目錄不存在,則自己建立。其中,標頭檔案放在inc資料夾下,.lib和.a檔案放在lib資料夾下。

(當然,版本不同,庫檔案和標頭檔案存放的路徑也許不同,到時參照上面的步驟就是了,上面的展示是依據07b來說的。)

三、        移植手寫hanwang輸入法

1、開啟hanwang開關

檔案:..//make//ztenc26_07b_gprs.mak

修改手寫輸入法為mmi_hanwang;

hand_writing    = mmi_hanwang # mmi_hanwang,  mmi_penpower

2、新增hanwang**

..//hanwang  

hanwang目錄新增到工程根目錄.

3、新增hanwang的編譯選項

工程檔案要最終通過makefile編譯成目標檔案,每個模組的編譯路徑都寫入該模組的編譯目錄中。

..//make//hanwang  包含檔案:

hanwang.def

hanwang.inc

hanwang.lis

hanwang.pth

4、新增hanwang輸入法庫檔案

在make//option.mak檔案裡面,查詢mmi_hanwang,找到類似如下**:

ifeq ($(strip $(hand_writing)),mmi_hanwang)

com_defs    += __mmi_hanwang__

complist    += hanwang

cus_rel_src_comp += hanwang

compobjs    += vendor//handwriting//hanwang//v1_official//lib//hw.a

cus_rel_obj_list    += vendor//handwriting//hanwang//v1_official//lib//hw.a

cus_rel_obj_list    += vendor//handwriting//hanwang//v1_official//lib//hw.lib

cus_rel_obj_list    += vendor//handwriting//hanwang//v1_official//lib//hw.dll

cus_rel_obj_list    += vendor//handwriting//hanwang//v1_official//lib//hws.lib

custom_comminc  +=        vendor//handwriting//hanwang//v1_official//inc

endif

從上面的指令碼中可以看到,hanwang輸入法的庫檔案的存放位置:

c://ztenc26_07b_v4//vendor// handwriting//hanwang//v1_official//lib

標頭檔案存放位置:

c://ztenc26_07b_v4//vendor// handwriting//hanwang//v1_official//inc

因此我們開始新增hanwang輸入法的庫檔案和標頭檔案到上面的目錄,如果目錄不存在,則自己建立。其中,標頭檔案放在inc資料夾下,.lib和.a檔案放在lib資料夾下。

(當然,版本不同,庫檔案和標頭檔案存放的路徑也許不同,到時參照上面的步驟就是了,上面的展示是依據07b來說的。)

四、開啟mtk自帶輸入法支援

在mmi_features.h裡面開啟形如__mmi_multitap_thai__的巨集開關,每種語言都對應著乙個巨集開關,根據需要開啟。

五、新增不同語言輸入法的虛擬鍵盤

1、新增虛擬鍵盤字型檔

這種字型檔檔案比較特殊,目前我們沒有去研究自己怎麼製作這種字型檔檔案,我們用的字型檔檔案**主要是07b上面的虛擬鍵盤字型檔(因為07b上面虛擬鍵盤字型檔很全)。同時,我也試過直接用我們自己生成的普通字型檔,結果虛擬鍵盤上顯示出方框,說明字型檔不支援。

按照07b上的**模式,直接把對應的關於虛擬鍵盤字型檔的所有**拷貝過來就是。

2、新增虛擬鍵盤布局

這個主要是要去修改wgui_virtual_keyboard.c檔案,這裡面有寫好的標準鍵盤布局模式,可以參考其**自己寫其他語言的虛擬鍵盤布局 模式。另外我們也可以比較07b的**,將對應的虛擬鍵盤布局**拷貝過來即可。注意,別加漏了,這個檔案裡面有好幾處都需要新增**的,自己搜語言巨集控 來加**就是了。

3、虛擬鍵盤的顯示與隱藏

虛擬鍵盤的顯示與隱藏主要體現在輸入法的切換方面,因此需要修改**的地方在這個叫editorpen.c裡面。主要修改的函式是 mmi_pen_editor_vk_show和 mmi_pen_editor_set_virtual_keyboard_by_input_mode。大家按照函式裡面已經寫好的**模式很容易就加 上其他語言虛擬鍵盤的支援**的。

六、輸入介面底部條中間輸入法提示符的顯示

這個主要呼叫的是editorpen.c檔案中的mmi_pen_editor_set_csk_content函式來進行文字、圖示的設定以及繪製的。如果輸入介面底部條中間的輸入法提示符的顯示出現問題,大家除錯該函式就是了。

七、輸入介面左上角輸入法提示符的顯示

這個主要呼叫的是wgui_categories_inputs.c檔案中的wgui_get_inputbox_information_ic

on函式和wgui_redraw_input_information_bar函式,具體的繪製步驟哪個地方出問題了,就請大家用模擬器打斷點調吧。

Rails多國語言

下載 zh tw.yml 到 config locale 下,就有預設的正體中文翻譯 config environment.rb 的 config.i18n.default locale zh tw 可以修改預設的語系 參考投影片 rails i18n 使用方法 i18n.t 在 view 中可以直...

Qt 多國語言

1 建立語言檔案 開啟.pro檔案,加入以下 translations cn.ts 工具 外部 qt語言家 更新翻譯,將生成翻譯檔案cn.ts 2 編輯翻譯檔案 啟動linguist qt語言家 開啟cn.ts,然後進行編輯,主要是將源文對應的譯文填寫上,最後儲存 3 部署翻譯檔案 工具 外部 qt...

Delphi做多國語言

傳說中的delphi做多國語言有很多種,個人我只會這一種,小弟的初學淺薄怕忘記。所以也就記下來了。假設有語言檔案 multilingual.ini 內容如下 language current 4 中文 name 名字 time 時間 language 語言 china 中國 繁體 name 名字 t...