MTK 移植泰文输入法
1.移植zi输入法 
1.1 在文件..\make\XXX_GPRS.mak中 讲输入方式改为MMI_ZI 
XXX_LANGUAGE = EN_SM_THAI  
INPUT_METHOD =MMI_XI 
1.2在MMI_feature.h 打开相应的ZI语言输入法的宏开关, 
#if defined(CFG_MMI_LANG_THAI) && ((CFG_MMI_LANG_THAI == __ON__)||(CFG_MMI_LANG_THAI == __AUTO__)) 
#ifndef __MMI_LANG_THAI__ 
#define __MMI_LANG_THAI__ 
#endif 
#endif 
在MMI_featureswithXXXX.h中讲泰文语言宏开关打开 
1.3添加zi代码 
将zi目录增加到目录工程中 
vendor\InputMethod 
1.4增加zi的编译选项 
make\zi 
包含文件有zi.def zi.inc zi.lis zi.pth 
1.5增加zi输入法的库文件 
make\option.mak 
ifeq ($(strip $(INPUT_METHOD)),MMI_ZI) 
CUSTOM_COMMINC += vendor\InputMethod\ZI\project\$(strip $(INPUT_METHOD_BASE))\v7_official\inc 
COMPOBJS += vendor\InputMethod\ZI\project\$(strip $(INPUT_METHOD_BASE))\v7_official\lib\zi8clib.a 
CUS_REL_OBJ_LIST += vendor\InputMethod\ZI\project\$(strip $(INPUT_METHOD_BASE))\v7_official\lib\zi8clib.a 
CUS_INPUTMETHOD_BASE = vendor\InputMethod\ZI\project\$(strip $(INPUT_METHOD_BASE))\v7_official 
endif 2。移植捷通手写泰文输入法 
2.1.在文件..\make\XXX_GPRS.mak中配置版本 
涉及 XXX_LANGUAGE = EN_SM_THAI  
USE_JIETONG_HANDWRITING = TRUE //手写识别 打开这个宏的话,一定要把HAND_WRITING设为MMI_HANWANG _DEMO 
HAND_WRITING =MMI_HANWANG _DEMO 
打开所有的触摸屏支持 
TOUCH_PANEL_SUPPORT = MT6301B 
TOUCH_PANEL_SHORTCUT_SUPPORT = TRUE //TRUE for touch panel size need to be larger than LCD size 
2.2 option.mak 增加相应的库 
ifeq ($(strip $(HAND_WRITING)),MMI_HANWANG_DEMO) 
COM_DEFS += __MMI_HANWANG__ __MMI_HANWANG_DEMO__ 
COMPLIST += hanwang 
ifeq ($(strip $(USE_JIETONG_HANDWRITING)),TRUE) 
COM_DEFS += __USE_JIETONG_HANDWRITING__  
COMPOBJS += vendor\handwriting\hanwang\v1_official\lib\HZRecog.a 
CUS_REL_OBJ_LIST += vendor\handwriting\hanwang\v1_official\lib\HZRecog.a  else 
COMPOBJS += vendor\handwriting\hanwang\v1_demo\lib\HWRE_MTL_OEM.a 
COMPOBJS += vendor\handwriting\hanwang\v1_demo\lib\thaihw.a  COMPOBJS += vendor\handwriting\hanwang\v1_demo\lib\arabichw.a 
CUS_REL_OBJ_LIST += vendor\handwriting\hanwang\v1_demo\lib\HZRecog.a 
CUS_REL_OBJ_LIST += vendor\handwriting\hanwang\v1_demo\lib\hw.a 
CUS_REL_OBJ_LIST += vendor\handwriting\hanwang\v1_demo\lib\hw.lib 
CUS_REL_OBJ_LIST += vendor\handwriting\hanwang\v1_demo\lib\arabichw.a 
CUS_REL_OBJ_LIST += vendor\handwriting\hanwang\v1_demo\lib\arabichw.lib CUS_REL_OBJ_LIST += vendor\handwriting\hanwang\v1_demo\lib\HWRE_MTL_OEM.lib 
CUS_REL_OBJ_LIST += vendor\handwriting\hanwang\v1_demo\lib\HWRE_MTL_OEM.a 
CUS_REL_OBJ_LIST += vendor\handwriting\hanwang\v1_demo\lib\thaihw.a 
CUS_REL_OBJ_LIST += vendor\handwriting\hanwang\v1_demo\lib\thaihw.lib 
CUS_REL_OBJ_LIST += vendor\handwriting\hanwang\v1_demo\lib\hw.dll 
CUS_REL_OBJ_LIST += vendor\handwriting\hanwang\v1_demo\lib\hws.lib 
endif CUSTOM_COMMINC += vendor\handwriting\hanwang\v1_demo\inc  endif 2.3参照第三方提供的说明文档,讲文件增加到相应的文件位置 输入法的接口在hanwanginterface.c  mmi_ime_hand_writing_initialize(),增加捷通的方法就行了, #if defined(__USE_JIETONG_HANDWRITING__)  
  long lops; 
FS_HANDLE fp; 
switch (hw_type) 
{ 
case IMM_HANDWRITING_TYPE_THAI: fp=FS_Open(L"C:\\jietong\\thai_jHWRDIC.DAT",FS_READ_ONLY); 
break; 
case IMM_HANDWRITING_TYPE_ARABIC: 
fp=FS_Open(L"C:\\jietong\\Arabic_jHWRDic.dat",FS_READ_ONLY); 
break; 
//增加多国语言方法一样。  
default: 
fp=FS_Open(L"C:\\jietong\\zh_jHWRDIC.DAT",FS_READ_ONLY); 
//默认是中文字典 
}  FS_Seek(fp,0,FS_FILE_END);  FS_GetFilePosition(fp,(UINT *)&lops); 
hand_writing_data=(BYTE*)malloc(lops); 
if(hand_writing_data==NULL) 
{ 
return;} 
FS_Seek(fp,0,FS_FILE_BEGIN); 
FS_Read(fp,hand_writing_data,lops,NULL); 
FS_Close(fp); 
HZInitCharacterRecognition(hand_writing_data); #endif  剩下的就是自己编译调试了。
2010-2-2
于上海
posted on 2012-03-31 16:03 Jerry Zong 阅读(1026) 评论(0) 收藏 举报
 
                    
                     
                    
                 
                    
                 
                
            
         
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号