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

📄 osdcharset.h

📁 MiniWinOuterSM MiniWinOuterSM
💻 H
字号:
#ifndef __OSD_CHARSET_H__
#define __OSD_CHARSET_H__
#define _UNICODE_SUPPORT 1
#define  _GB_SUPPORT 1
#define _EUCKR_SUPPORT 1
#define _EUCJP_SUPPORT 1
#define _SHIFTJIS_SUPPORT 1
#define _ARABIC_SUPPORT 1
#define MAX_LEN_MCHAR 32
#define LEN_FONT_NAME 32
#define FONT_CHARSET_US_ASCII       "US-ASCII"

#define FONT_CHARSET_ISO8859_1      "ISO8859-1"	// ISO 拉丁语-1(西欧)
#define FONT_CHARSET_ISO8859_2      "ISO8859-2" //ISO 拉丁 语-2(东欧)
#define FONT_CHARSET_ISO8859_3      "ISO8859-3" //ISO 拉丁语-3 (南欧)
#define FONT_CHARSET_ISO8859_4      "ISO8859-4" //ISO 拉丁语-4 (北欧)
#define FONT_CHARSET_ISO8859_5      "ISO8859-5" //ISO 斯拉夫语
#define FONT_CHARSET_ISO8859_6      "ISO8859-6" //ISO 阿拉伯语
#define FONT_CHARSET_ISO8859_7      "ISO8859-7" //ISO 希腊语
#define FONT_CHARSET_ISO8859_8      "ISO8859-8" //ISO 希伯莱语
#define FONT_CHARSET_ISO8859_9      "ISO8859-9" //ISO Latin-5 (土尔其语)
#define FONT_CHARSET_ISO8859_10     "ISO8859-10"//ISO Latin-6 (日耳曼语);  
#define FONT_CHARSET_ISO8859_11     "ISO8859-11"
#define FONT_CHARSET_ISO8859_12     "ISO8859-12"
#define FONT_CHARSET_ISO8859_13     "ISO8859-13"
#define FONT_CHARSET_ISO8859_14     "ISO8859-14"
#define FONT_CHARSET_ISO8859_15     "ISO8859-15"//ISO Latin-9、或 Latin-0 (修订的西欧语言); 
#define FONT_CHARSET_ISO8859_16     "ISO8859-16"

#define FONT_CHARSET_EUC_CN         "EUC-CN"
#define FONT_CHARSET_GB1988_0       "GB1988-0"      /* EUC encoding of GB1988 charset, treat as ISO8859-1 */
#define FONT_CHARSET_GB2312_0       "GB2312-0"      /* EUC encoding of GB2312 charset */

#define FONT_CHARSET_GBK            "GBK"
#define FONT_CHARSET_GB18030_0      "GB18030-0"     /* EUC encoding of GB18030 charset */

#define FONT_CHARSET_BIG5           "BIG5"
#define FONT_CHARSET_EUCTW          "EUC-TW"        /* EUC encoding of CNS11643 charset, not supported */

#define FONT_CHARSET_EUCKR          "EUC-KR"		//韩文
#define FONT_CHARSET_KSC5636_0      "KSC5636-0"     /* EUC encoding of KSC5636 charset, treat as ISO8859-1 */
#define FONT_CHARSET_KSC5601_0      "KSC5601-0"     /* EUC encoding of KSC5601 charset */

#define FONT_CHARSET_EUCJP          "EUC-JP"
#define FONT_CHARSET_JISX0201_0     "JISX0201-0"    /* EUC encoding of JISX0201 charset */
#define FONT_CHARSET_JISX0208_0     "JISX0208-0"    /* EUC encoding of JISX0208 charset */

#define FONT_CHARSET_SHIFTJIS       "SHIFT-JIS"     //日文支持 
#define FONT_CHARSET_JISX0201_1     "JISX0201-1"    /* Shift-JIS encoding of JISX0201 charset */
#define FONT_CHARSET_JISX0208_1     "JISX0208-1"    /* Shift-JIS encoding of JISX0208 charset */

#define FONT_CHARSET_ISO_10646_1    "ISO-10646-1"   /* UCS-2 encoding of UNICODE */
#define FONT_CHARSET_UTF8           "UTF-8"

typedef struct{
    /** the length of the word. */
    int len;
    /** the delimiter after the word. */
    unsigned char delimiter;
    /** the number of delimiters after the word. */
    int nr_delimiters;
}WORDINFO;

typedef struct{
    int nr_chars;//字符总数
    int bytes_per_char;//字符大小
    int bytes_maxlen_char;//字符大长度
    const char* name;
    char def_char [MAX_LEN_MCHAR];

    int (*len_first_char) (const unsigned char* mstr, int mstrlen);
    unsigned int (*char_offset) (const unsigned char* mchar);

    int (*nr_chars_in_str) (const unsigned char* mstr, int mstrlen);

    int (*is_this_charset) (const char* charset);

    int (*len_first_substr) (const unsigned char* mstr, int mstrlen);
    const unsigned char* (*get_next_word) (const unsigned char* mstr, 
                int strlen, WORDINFO* word_info);

    int (*pos_first_char) (const unsigned char* mstr, int mstrlen);

#ifdef _UNICODE_SUPPORT
    unsigned short (*conv_to_uc16) (const unsigned char* mchar, int len);
#endif /* LITE_VERSION */
} CHARSETOPS;

CHARSETOPS*GetCharsetOps (const char* charset_name);
#endif

⌨️ 快捷键说明

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