⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 zi8api.h

📁 用于嵌入式系统的输入法程序 里面有完整的系统实现原码
💻 H
📖 第 1 页 / 共 4 页
字号:
/* zi8api.h 
*/
/*****************************************************************************
* COPYRIGHT ZI AND SUBJECT TO CONFIDENTIALITY RESTRICTIONS                   *
*                                                                            *
* This file is the confidential and proprietary property of Zi Corporation   *
* of Canada, Inc. ("Zi") or one of its affiliates.                           *
**************************************************************************** */

/* Note: This file is ANSI C
**
** This file provides the definitions for constants and structures used in the
** eZiText core library.
**
** All of these definitions will generally remain the same regardless
** of platform.
**
*/
#include "zi8cfg.h" 
#include "zi8types.h"


/* prevent multiple inclusion */
#ifndef _ZI8_API_H
#define _ZI8_API_H 

#define ZI8TRUE                        1
#define ZI8FALSE                       0
#define ZI8NULL                        0

/* These ZI8_GETCHARSET_* are defined only for compatibility with version 3.0 */
#define ZI8_GETCHARSET_ZH              1
#define ZI8_GETCHARSET_ZH_TW           2
#define ZI8_GETCHARSET_ZH_HK           4
#define ZI8_GETCHARSET_ZH_ALL          7

#define ZI8_GETMODE_DEFAULT            0
#define ZI8_GETMODE_STROKES            0
#define ZI8_GETMODE_PINYIN             1
#define ZI8_GETMODE_BOPOMOFO           2
#define ZI8_GETMODE_1KEYPRESS_PINYIN   3
#define ZI8_GETMODE_1KEYPRESS_BOPOMOFO 4
#define ZI8_GETMODE_COMPONENTS_ONLY    5
#define ZI8_GETMODE_ROMAJI_2_HIRAGANA  6
#define ZI8_GETMODE_CANGJIE            7

#define ZI8_GETMODE_KEYPRESS_ICON      1

#define ZI8_GETCONTEXT_DEFAULT         0x01
#define ZI8_GETCONTEXT_SMS             0x01
#define ZI8_GETCONTEXT_SURNAME         0x02
#define ZI8_GETCONTEXT_JP_NAME         0x02
#define ZI8_GETCONTEXT_GIVENNAME       0x04
#define ZI8_GETCONTEXT_CHINESE_PUNCT   0x08
#define ZI8_GETCONTEXT_NO_RADICALS     0x40  /* ORed with other GetContext */
#define ZI8_GETCONTEXT_NO_DUPLICATE    0x80  /* ORed with other GetContext */
#define ZI8_GETCONTEXT_SINGLE_CHAR     0x20  /* ORed with other GetContext */

#define ZI8_GETOPTION_DEFAULT          0
#define ZI8_GETOPTION_CHARSNCOMPS      1
#define ZI8_GETOPTION_NOCOMPONENTS     2
#define ZI8_GETOPTION_ALLCOMPONENTS    3
#define ZI8_GETOPTION_SAMESOUND        4
#define ZI8_GETOPTION_WORDCHARCOUNT    5
#define ZI8_GETOPTION_NOCOMPLETION     2
#define ZI8_GETOPTION_GET_SPELLING2    0x80
#define ZI8_GETOPTION_GET_SPELLING     0x81
#define ZI8_GETOPTION_STRINGS          0x80
#define ZI8_GETOPTION_WSTRINGS         0x81
#define ZI8_GETOPTION_ROMAJI           1
#define ZI8_GETOPTION_HIRAGANA         2
#define ZI8_GETOPTION_KATAKANA         3
#define ZI8_GETOPTION_COMPOSITE        4
#define ZI8_GETOPTION_SMILEYS          5
#define ZI8_GETOPTION_HALFWIDTH        6 /* 1/2 width katakana */
#define ZI8_GETOPTION_HIRAGANA_INFO    0x40 /* Ored with option COMPOSITE */
#define ZI8_GETOPTION_STEM_INFO        0x80 /* Ored with other GetOption */
#define ZI8_GETOPTION_RBPROCESS        0x10 /* Ored with other GetOption */
#define ZI8_GETOPTION_INT_RBPROCESS    0x20 /* Ored with other GetOption */

#define ZI8_CHARSET_LATIN1             0
#define ZI8_CHARSET_UNICODE            1
#define ZI8_CHARSET_GSMDEFAULT         2

#define ZI8_LANG_GSMDEFAULT            0
#define ZI8_LANG_ZH                    1
#define ZI8_LANG_PY                    2
#define ZI8_LANG_EN                    3
#define ZI8_LANG_FR                    4
#define ZI8_LANG_DE                    5
#define ZI8_LANG_ES                    6

#define ZI8_LANG_PT                    8
#define ZI8_LANG_SV                    9
#define ZI8_LANG_FI                    10
#define ZI8_LANG_NO                    11
#define ZI8_LANG_DA                    12
#define ZI8_LANG_NL                    13
#define ZI8_LANG_EL                    14
#define ZI8_LANG_TR                    15
#define ZI8_LANG_JP                    16
#define ZI8_LANG_KO                    18
#define ZI8_LANG_AR                    19
#define ZI8_LANG_IN                    20
#define ZI8_LANG_MS                    21
#define ZI8_LANG_PL                    22
#define ZI8_LANG_CS                    23
#define ZI8_LANG_IW                    24
#define ZI8_LANG_VI                    25
#define ZI8_LANG_SK                    26
#define ZI8_LANG_EU                    27
#define ZI8_LANG_BN                    28
#define ZI8_LANG_HR                    29
#define ZI8_LANG_CH                    30
#define ZI8_LANG_ET                    31
#define ZI8_LANG_HI                    32
#define ZI8_LANG_HU                    33
#define ZI8_LANG_LV                    34
#define ZI8_LANG_LT                    35
#define ZI8_LANG_FA                    36
#define ZI8_LANG_PA                    37
#define ZI8_LANG_RO                    38
#define ZI8_LANG_RU                    39
#define ZI8_LANG_SR                    40
#define ZI8_LANG_SL                    41
#define ZI8_LANG_TH                    42
#define ZI8_LANG_UR                    43
#define ZI8_LANG_UK                    44
#define ZI8_LANG_TL                    45
#define ZI8_LANG_EN2                   46
#define ZI8_LANG_IT                    47
#define ZI8_LANG_IS                    48
#define ZI8_LANG_BG                    49
#define ZI8_LANG_PT2                   50
#define ZI8_LANG_ES2                   51
#define ZI8_LANG_FR2                   52
#define ZI8_LANG_ARB                   127 
#define ZI8_AUXTABLE_ZH1               128
#define ZI8_AUXTABLE_JP1               129

#define ZI8_SUBLANG_DEFAULT            7

#define ZI8_SUBLANG_ZH                 1
#define ZI8_SUBLANG_ZH_TW              2
#define ZI8_SUBLANG_ZH_HK              4
#define ZI8_SUBLANG_ZH_ALL             7

#define ZI8_SUBLANG_EN_US              1
#define ZI8_SUBLANG_EN_UK              2
#define ZI8_SUBLANG_EN_ALL             7

#define ZI8_SUBLANG_PR_BR              1
#define ZI8_SUBLANG_PR_PR              2
#define ZI8_SUBLANG_PR_ALL             7

#define ZI8_COMPARE_EXACT              0x08
#define ZI8_COMPARE_MASK               0x07
#define ZI8_COMPARE_STROKE             1
#define ZI8_COMPARE_PINYIN             2
#define ZI8_COMPARE_BOPOMOFO           3
#define ZI8_COMPARE_STROKE_BYTYPESONLY 4
#define ZI8_COMPARE_CANGJIE            5
   
/* uwd search options */
#define ZI8_UWD_OPT_DEFAULT            0x00 /* seq. order based on the
                                               learning order */
#define ZI8_UWD_OPT_EXACTMATCH         0x01 /* exact match candidates first
                                               then followed by others */
#define ZI8_UWD_OPT_LATESTMATCH        0x02 /* latest match first followed by
                                               exact match candidates then
                                               followed by others */

#define ZI8_STROKE_WILDCARD            0
#define ZI8_STROKE_DOWN                1
#define ZI8_STROKE_DOT                 2
#define ZI8_STROKE_CURVED_HOOK         3
#define ZI8_STROKE_OVER                4
#define ZI8_STROKE_OVER_DOWN           5
#define ZI8_STROKE_DOWN_OVER           6
#define ZI8_STROKE_LEFT                7
#define ZI8_STROKE_OVER_DOWN_OVER      8
#define ZI8_STROKE_MORE                9
#define ZI8_STROKE_TURN                10

#define ZI8_CODE_WILDCARD              (ZI8_BASE_STROKES+ZI8_STROKE_WILDCARD)
#define ZI8_CODE_MORE                  (ZI8_BASE_STROKES+ZI8_STROKE_MORE)
#define ZI8_CODE_LEFT                  (ZI8_BASE_STROKES+ZI8_STROKE_LEFT)
#define ZI8_CODE_OVER                  (ZI8_BASE_STROKES+ZI8_STROKE_OVER)
#define ZI8_CODE_DOT                   (ZI8_BASE_STROKES+ZI8_STROKE_DOT)
#define ZI8_CODE_DOWN                  (ZI8_BASE_STROKES+ZI8_STROKE_DOWN)
#define ZI8_CODE_TURN                  (ZI8_BASE_STROKES+ZI8_STROKE_TURN)
#define ZI8_CODE_DOWN_OVER             (ZI8_BASE_STROKES+ZI8_STROKE_DOWN_OVER)
#define ZI8_CODE_OVER_DOWN             (ZI8_BASE_STROKES+ZI8_STROKE_OVER_DOWN)
#define ZI8_CODE_CURVED_HOOK           (ZI8_BASE_STROKES+ZI8_STROKE_CURVED_HOOK)
#define ZI8_CODE_OVER_DOWN_OVER     (ZI8_BASE_STROKES+ZI8_STROKE_OVER_DOWN_OVER)

#define ZI8_CODE_LATIN_PUNCT           (ZI8_BASE_LATIN_KEYS+1)
#define ZI8_CODE_LATIN_ABC             (ZI8_BASE_LATIN_KEYS+2)
#define ZI8_CODE_LATIN_DEF             (ZI8_BASE_LATIN_KEYS+3)
#define ZI8_CODE_LATIN_GHI             (ZI8_BASE_LATIN_KEYS+4)
#define ZI8_CODE_LATIN_JKL             (ZI8_BASE_LATIN_KEYS+5)
#define ZI8_CODE_LATIN_MNO             (ZI8_BASE_LATIN_KEYS+6)
#define ZI8_CODE_LATIN_PQRS            (ZI8_BASE_LATIN_KEYS+7)
#define ZI8_CODE_LATIN_TUV             (ZI8_BASE_LATIN_KEYS+8)
#define ZI8_CODE_LATIN_WXYZ            (ZI8_BASE_LATIN_KEYS+9)

#define ZI8_CODE_LATIN_KEY1            0x31
#define ZI8_CODE_LATIN_KEY2            (ZI8_BASE_LATIN_KEYS+2)
#define ZI8_CODE_LATIN_KEY3            (ZI8_BASE_LATIN_KEYS+3)
#define ZI8_CODE_LATIN_KEY4            (ZI8_BASE_LATIN_KEYS+4)
#define ZI8_CODE_LATIN_KEY5            (ZI8_BASE_LATIN_KEYS+5)
#define ZI8_CODE_LATIN_KEY6            (ZI8_BASE_LATIN_KEYS+6)
#define ZI8_CODE_LATIN_KEY7            (ZI8_BASE_LATIN_KEYS+7)
#define ZI8_CODE_LATIN_KEY8            (ZI8_BASE_LATIN_KEYS+8)
#define ZI8_CODE_LATIN_KEY9            (ZI8_BASE_LATIN_KEYS+9)
#define ZI8_CODE_LATIN_KEY0            (ZI8_BASE_LATIN_KEYS+10)

#define ZI8_CODE_SEPARATOR             (ZI8_BASE_PINYIN-1)
#define ZI8_CODE_PHONETIC_SEPARATOR    (ZI8_BASE_PINYIN-1)
#define ZI8_CODE_PINYIN_SEPARATOR      (ZI8_BASE_PINYIN-1)
#define ZI8_CODE_BPMF_SEPARATOR        (ZI8_BASE_PINYIN-1)
#define ZI8_CODE_CANGJIE_SEPARATOR     (0x20) /* ' ' */
#define ZI8_ONEKEY_SEPARATOR           (ZI8_BASE_LATIN_KEYS+13)

#define ZI8_CODE_BPMF_B                (ZI8_BASE_BPMF+0)
#define ZI8_CODE_BPMF_P                (ZI8_BASE_BPMF+1)
#define ZI8_CODE_BPMF_M                (ZI8_BASE_BPMF+2)
#define ZI8_CODE_BPMF_F                (ZI8_BASE_BPMF+3)
#define ZI8_CODE_BPMF_D                (ZI8_BASE_BPMF+4)
#define ZI8_CODE_BPMF_T                (ZI8_BASE_BPMF+5)
#define ZI8_CODE_BPMF_N                (ZI8_BASE_BPMF+6)
#define ZI8_CODE_BPMF_L                (ZI8_BASE_BPMF+7)
#define ZI8_CODE_BPMF_G                (ZI8_BASE_BPMF+8)
#define ZI8_CODE_BPMF_K                (ZI8_BASE_BPMF+9)
#define ZI8_CODE_BPMF_H                (ZI8_BASE_BPMF+10)
#define ZI8_CODE_BPMF_J                (ZI8_BASE_BPMF+11)
#define ZI8_CODE_BPMF_Q                (ZI8_BASE_BPMF+12)
#define ZI8_CODE_BPMF_X                (ZI8_BASE_BPMF+13)
#define ZI8_CODE_BPMF_ZH               (ZI8_BASE_BPMF+14)
#define ZI8_CODE_BPMF_CH               (ZI8_BASE_BPMF+15)
#define ZI8_CODE_BPMF_SH               (ZI8_BASE_BPMF+16)
#define ZI8_CODE_BPMF_R                (ZI8_BASE_BPMF+17)
#define ZI8_CODE_BPMF_Z                (ZI8_BASE_BPMF+18)
#define ZI8_CODE_BPMF_C                (ZI8_BASE_BPMF+19)
#define ZI8_CODE_BPMF_S                (ZI8_BASE_BPMF+20)
#define ZI8_CODE_BPMF_A                (ZI8_BASE_BPMF+21)
#define ZI8_CODE_BPMF_O                (ZI8_BASE_BPMF+22)
#define ZI8_CODE_BPMF_E                (ZI8_BASE_BPMF+23)
#define ZI8_CODE_BPMF_EH               (ZI8_BASE_BPMF+24)
#define ZI8_CODE_BPMF_AI               (ZI8_BASE_BPMF+25)
#define ZI8_CODE_BPMF_EI               (ZI8_BASE_BPMF+26)
#define ZI8_CODE_BPMF_AU               (ZI8_BASE_BPMF+27)
#define ZI8_CODE_BPMF_OU               (ZI8_BASE_BPMF+28)
#define ZI8_CODE_BPMF_AN               (ZI8_BASE_BPMF+29)
#define ZI8_CODE_BPMF_EN               (ZI8_BASE_BPMF+30)
#define ZI8_CODE_BPMF_ANG              (ZI8_BASE_BPMF+31)
#define ZI8_CODE_BPMF_ENG              (ZI8_BASE_BPMF+32)
#define ZI8_CODE_BPMF_ER               (ZI8_BASE_BPMF+33)
#define ZI8_CODE_BPMF_I                (ZI8_BASE_BPMF+34)
#define ZI8_CODE_BPMF_U                (ZI8_BASE_BPMF+35)
#define ZI8_CODE_BPMF_IU               (ZI8_BASE_BPMF+36)

#define ZI8_CODE_PINYIN_A              (ZI8_BASE_PINYIN+0)
#define ZI8_CODE_PINYIN_B              (ZI8_BASE_PINYIN+1)
#define ZI8_CODE_PINYIN_C              (ZI8_BASE_PINYIN+2)
#define ZI8_CODE_PINYIN_D              (ZI8_BASE_PINYIN+3)
#define ZI8_CODE_PINYIN_E              (ZI8_BASE_PINYIN+4)
#define ZI8_CODE_PINYIN_F              (ZI8_BASE_PINYIN+5)
#define ZI8_CODE_PINYIN_G              (ZI8_BASE_PINYIN+6)
#define ZI8_CODE_PINYIN_H              (ZI8_BASE_PINYIN+7)
#define ZI8_CODE_PINYIN_I              (ZI8_BASE_PINYIN+8)
#define ZI8_CODE_PINYIN_J              (ZI8_BASE_PINYIN+9)
#define ZI8_CODE_PINYIN_K              (ZI8_BASE_PINYIN+10)
#define ZI8_CODE_PINYIN_L              (ZI8_BASE_PINYIN+11)
#define ZI8_CODE_PINYIN_M              (ZI8_BASE_PINYIN+12)
#define ZI8_CODE_PINYIN_N              (ZI8_BASE_PINYIN+13)
#define ZI8_CODE_PINYIN_O              (ZI8_BASE_PINYIN+14)
#define ZI8_CODE_PINYIN_P              (ZI8_BASE_PINYIN+15)
#define ZI8_CODE_PINYIN_Q              (ZI8_BASE_PINYIN+16)
#define ZI8_CODE_PINYIN_R              (ZI8_BASE_PINYIN+17)
#define ZI8_CODE_PINYIN_S              (ZI8_BASE_PINYIN+18)
#define ZI8_CODE_PINYIN_T              (ZI8_BASE_PINYIN+19)
#define ZI8_CODE_PINYIN_U              (ZI8_BASE_PINYIN+20)
#define ZI8_CODE_PINYIN_V              (ZI8_BASE_PINYIN+21)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -