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

📄 tm2uni.h

📁 This software performs code conversion of Chinese characters, including GB2312/GBK and BIG5. It a
💻 H
📖 第 1 页 / 共 2 页
字号:



// LATIN
static const unsigned short TmLatinToUnicode [] = {
      0x0020,  0x0021,  0x0022,  0x0023,  0x0024,  0x0025,  0x0026,  0x0027,  // 0x002x
      0x0028,  0x0029,  0x002A,  0x002B,  0x002C,  0x002D,  0x002E,  0x002F,  
      0x0030,  0x0031,  0x0032,  0x0033,  0x0034,  0x0035,  0x0036,  0x0037,  // 0x003x
      0x0038,  0x0039,  0x003A,  0x003B,  0x00BA,  0x003D,  0x00AA,  0x003F,  
      0x00B1,  0x0041,  0x0042,  0x0043,  0x0044,  0x0045,  0x0046,  0x0047,  // 0x004x
      0x0048,  0x0049,  0x004A,  0x004B,  0x004C,  0x004D,  0x004E,  0x004F,  
      0x0050,  0x0051,  0x0052,  0x0053,  0x0054,  0x0055,  0x0056,  0x0057,  // 0x005x
      0x0058,  0x0059,  0x005A,  0x0069,  0x00F1,  0x00BF,  0x00B2,  0x005F,  
      0x0060,  0x0061,  0x0062,  0x0063,  0x0064,  0x0065,  0x0066,  0x0067,  // 0x006x
      0x0068,  0x0069,  0x006A,  0x006B,  0x006C,  0x006D,  0x006E,  0x006F,  
      0x0070,  0x0071,  0x0072,  0x0073,  0x0074,  0x0075,  0x0076,  0x0077,  // 0x007x
      0x0078,  0x0079,  0x007A,  0x00BC,  0x00BD,  0x00B6,  0x00A7,  0x007F,  
      0x00B1,  0,       0,       0,       0,       0,       0,       0,       // 0x008x
} ;




// NORWEGIA
static const unsigned short TmNorwegiaToUnicode [] = {
      0x0020,  0x0021,  0x0022,  0x00A3,  0x0024,  0x0025,  0x0026,  0x0027,  // 0x002x
      0x0028,  0x0029,  0x002A,  0x002B,  0x002C,  0x002D,  0x002E,  0x002F,  
      0x0030,  0x0031,  0x0032,  0x0033,  0x0034,  0x0035,  0x0036,  0x0037,  // 0x003x
      0x0038,  0x0039,  0x003A,  0x003B,  0x003C,  0x003D,  0x003E,  0x003F,  
      0x00A7,  0x0041,  0x0042,  0x0043,  0x0044,  0x0045,  0x0046,  0x0047,  // 0x004x
      0x0048,  0x0049,  0x004A,  0x004B,  0x004C,  0x004D,  0x004E,  0x004F,  
      0x0050,  0x0051,  0x0052,  0x0053,  0x0054,  0x0055,  0x0056,  0x0057,  // 0x005x
      0x0058,  0x0059,  0x005A,  0x00E6,  0x00F8,  0x00E5,  0x005E,  0x005F,  
      0x0060,  0x0061,  0x0062,  0x0063,  0x0064,  0x0065,  0x0066,  0x0067,  // 0x006x
      0x0068,  0x0069,  0x006A,  0x006B,  0x006C,  0x006D,  0x006E,  0x006F,  
      0x0070,  0x0071,  0x0072,  0x0073,  0x0074,  0x0075,  0x0076,  0x0077,  // 0x007x
      0x0078,  0x0079,  0x007A,  0x00C6,  0x00D8,  0x00C5,  0x00A8,  0x007F,  
      0x00BD,  0,       0,       0,       0,       0,       0,       0,       // 0x008x
} ;




// ORIGINAL
static const unsigned short TmOriginalToUnicode [] = {
      0x0020,  0x222A,  0x2229,  0x2283,  0x2282,  0x2286,  0x2287,  0x2208,  // 0x002x
      0x220B,  0x300A,  0x21D2,  0x21D0,  0x014B,  0x00B4,  0x2220,  0x2218,  
      0x00B0,  0x03B9,  0x0375,  0x0327,  0x0303,  0x030C,  0x0303,  0x030C,  // 0x003x
      0x0303,  0x0307,  0x0192,  0x003A,  0x228B,  0x2228,  0x2209,  0x220C,  
      0x019A,  0x0041,  0,       0x0043,  0x2203,  0x0045,  0x2200,  0x0047,  // 0x004x
      0x0048,  0x0049,  0x004A,  0x00C6,  0x0152,  0x228A,  0x004E,  0x004F,  
      0,       0x2234,  0x2248,  0x0053,  0x2252,  0x0055,  0x22A5,  0x2235,  // 0x005x
      0x2297,  0x0059,  0x005A,  0x03C2,  0x005E,  0x0133,  0x0060,  0x005F,  
      0x2227,  0x0061,  0x0283,  0x0063,  0x0259,  0x0065,  0x025A,  0x0067,  // 0x006x
      0x0068,  0x026A,  0x006A,  0x00E6,  0x0153,  0x01B7,  0x006E,  0x006F,  
      0x00F8,  0x0251,  0x03B8,  0x0073,  0x00F0,  0x0075,  0x025B,  0x025C,  // 0x007x
      0x028C,  0x0079,  0x007A,  0x00C7,  0x21C6,  0x0132,  0x0141,  0x007F,  
      0x00A8,  0,       0,       0,       0,       0,       0,       0,       // 0x008x
} ;




// POLAND
static const unsigned short TmPolandToUnicode [] = {
      0x0020,  0x00A7,  0x0025,  0x0021,  0x003F,  0x002B,  0x003D,  0x003A,  // 0x002x
      0x005F,  0x002F,  0x002A,  0x0119,  0x0141,  0x017C,  0x002E,  0x002D,  
      0x0030,  0x0031,  0x0032,  0x0033,  0x0034,  0x0035,  0x0036,  0x0037,  // 0x003x
      0x0038,  0x0039,  0x0105,  0x0142,  0x0144,  0x017B,  0x015B,  0x0107,  
      0x00F3,  0x0041,  0x0042,  0x0043,  0x0044,  0x0045,  0x0046,  0x0047,  // 0x004x
      0x0048,  0x0049,  0x004A,  0x004B,  0x004C,  0x004D,  0x004E,  0x004F,  
      0x0050,  0x0051,  0x0052,  0x0053,  0x0054,  0x0055,  0x0056,  0x0057,  // 0x005x
      0x0058,  0x005A,  0x0059,  0x0069,  0x00F1,  0x00BF,  0x00B2,  0x005F,  
      0x0060,  0x0061,  0x0062,  0x0063,  0x0064,  0x0065,  0x0066,  0x0067,  // 0x006x
      0x0068,  0x0069,  0x006A,  0x006B,  0x006C,  0x006D,  0x006E,  0x006F,  
      0x0070,  0x0071,  0x0072,  0x0073,  0x0074,  0x0075,  0x0076,  0x0077,  // 0x007x
      0x0078,  0x007A,  0x0079,  0x0118,  0x00D3,  0x0143,  0x017A,  0x007F,  
      0x0179,  0,       0,       0,       0,       0,       0,       0,       // 0x008x
} ;




// PORTUGUE
static const unsigned short TmPortugueToUnicode [] = {
      0x0020,  0x0021,  0x0022,  0x00A3,  0x0024,  0x0025,  0x0026,  0x0027,  // 0x002x
      0x0028,  0x0029,  0x002A,  0x002B,  0x002C,  0x002D,  0x002E,  0x002F,  
      0x0030,  0x0031,  0x0032,  0x0033,  0x0034,  0x0035,  0x0036,  0x0037,  // 0x003x
      0x0038,  0x0039,  0x003A,  0x003B,  0x00BA,  0x003D,  0x00AA,  0x003F,  
      0x00A7,  0x0041,  0x0042,  0x0043,  0x0044,  0x0045,  0x0046,  0x0047,  // 0x004x
      0x0048,  0x0049,  0x004A,  0x004B,  0x004C,  0x004D,  0x004E,  0x004F,  
      0x0050,  0x0051,  0x0052,  0x0053,  0x0054,  0x0055,  0x0056,  0x0057,  // 0x005x
      0x0058,  0x0059,  0x005A,  0x00A8,  0x00B2,  0x00E7,  0x005E,  0x005F,  
      0x0060,  0x0061,  0x0062,  0x0063,  0x0064,  0x0065,  0x0066,  0x0067,  // 0x006x
      0x0068,  0x0069,  0x006A,  0x006B,  0x006C,  0x006D,  0x006E,  0x006F,  
      0x0070,  0x0071,  0x0072,  0x0073,  0x0074,  0x0075,  0x0076,  0x0077,  // 0x007x
      0x0078,  0x0079,  0x007A,  0x00B4,  0x007C,  0x00C7,  0x007E,  0x007F,  
      0x0079,  0,       0,       0,       0,       0,       0,       0,       // 0x008x
} ;




// RUSSIAN
static const unsigned short TmRussianToUnicode [] = {
      0x0020,  0x0021,  0x0022,  0x002B,  0x002A,  0x0025,  0x0026,  0x0020,  // 0x002x
      0x0028,  0x0029,  0x0416,  0x042C,  0x002C,  0x002D,  0x002E,  0x002F,  
      0x0030,  0x0031,  0x0032,  0x0033,  0x0034,  0x0035,  0x0036,  0x0037,  // 0x003x
      0x0038,  0x0039,  0x0436,  0x044C,  0x003B,  0x003D,  0x003A,  0x003F,  
      0x044E,  0x0410,  0x0411,  0x0426,  0x0414,  0x0415,  0x0424,  0x0413,  // 0x004x
      0x0427,  0x0418,  0x0419,  0x041A,  0x041B,  0x041C,  0x041D,  0x041E,  
      0x041F,  0x042F,  0x0420,  0x0421,  0x0422,  0x0423,  0x0412,  0x0428,  // 0x005x
      0x0425,  0x042B,  0x0417,  0x0449,  0x044A,  0x044D,  0x0451,  0x005F,  
      0x0401,  0x0430,  0x0431,  0x0446,  0x0434,  0x0435,  0x0444,  0x0433,  // 0x006x
      0x0447,  0x0438,  0x0439,  0x043A,  0x043B,  0x043C,  0x043D,  0x043E,  
      0x043F,  0x044F,  0x0440,  0x0441,  0x0442,  0x0443,  0x0432,  0x0448,  // 0x007x
      0x0445,  0x044B,  0x0437,  0x0429,  0x042A,  0x042D,  0x042E,  0x005F,  
      0,       0,       0,       0,       0,       0,       0,       0,       // 0x008x
} ;




// SPANISH
static const unsigned short TmSpanishToUnicode [] = {
      0x0020,  0x0021,  0x0022,  0x20A7,  0x0024,  0x0025,  0x0026,  0x0027,  // 0x002x
      0x0028,  0x0029,  0x002A,  0x002B,  0x002C,  0x002D,  0x002E,  0x002F,  
      0x0030,  0x0031,  0x0032,  0x0033,  0x0034,  0x0035,  0x0036,  0x0037,  // 0x003x
      0x0038,  0x0039,  0x003A,  0x003B,  0x00BA,  0x003D,  0x00AA,  0x003F,  
      0x00B4,  0x0041,  0x0042,  0x0043,  0x0044,  0x0045,  0x0046,  0x0047,  // 0x004x
      0x0048,  0x0049,  0x004A,  0x004B,  0x004C,  0x004D,  0x004E,  0x004F,  
      0x0050,  0x0051,  0x0052,  0x0053,  0x0054,  0x0055,  0x0056,  0x0057,  // 0x005x
      0x0058,  0x0059,  0x005A,  0x00BD,  0x00F1,  0x00BF,  0x005E,  0x005F,  
      0x0060,  0x0061,  0x0062,  0x0063,  0x0064,  0x0065,  0x0066,  0x0067,  // 0x006x
      0x0068,  0x0069,  0x006A,  0x006B,  0x006C,  0x006D,  0x006E,  0x006F,  
      0x0070,  0x0071,  0x0072,  0x0073,  0x0074,  0x0075,  0x0076,  0x0077,  // 0x007x
      0x0078,  0x0079,  0x007A,  0x00B0,  0x00D1,  0x00E7,  0x00A8,  0x007F,  
      0x00B2,  0,       0,       0,       0,       0,       0,       0,       // 0x008x
} ;




// SWISS
static const unsigned short TmSwissToUnicode [] = {
      0x0020,  0x0021,  0x0022,  0x00A3,  0x0024,  0x0025,  0x0026,  0x0027,  // 0x002x
      0x0028,  0x0029,  0x002A,  0x002B,  0x002C,  0x002D,  0x002E,  0x002F,  
      0x0030,  0x0031,  0x0032,  0x0033,  0x0034,  0x0035,  0x0036,  0x0037,  // 0x003x
      0x0038,  0x0039,  0x003A,  0x003B,  0x00E9,  0x003D,  0x00E7,  0x003F,  
      0x00A7,  0x0041,  0x0042,  0x0043,  0x0044,  0x0045,  0x0046,  0x0047,  // 0x004x
      0x0048,  0x0049,  0x004A,  0x004B,  0x004C,  0x004D,  0x004E,  0x004F,  
      0x0050,  0x0051,  0x0052,  0x0053,  0x0054,  0x0055,  0x0056,  0x0057,  // 0x005x
      0x0058,  0x0059,  0x005A,  0x005B,  0x00E8,  0x005D,  0x005E,  0x005F,  
      0x0060,  0x0061,  0x0062,  0x0063,  0x0064,  0x0065,  0x0066,  0x0067,  // 0x006x
      0x0068,  0x0069,  0x006A,  0x006B,  0x006C,  0x006D,  0x006E,  0x006F,  
      0x0070,  0x0071,  0x0072,  0x0073,  0x0074,  0x0075,  0x0076,  0x0077,  // 0x007x
      0x0078,  0x0079,  0x007A,  0x00E4,  0x00F6,  0x00FC,  0x00E0,  0x007F,  
      0x00B0,  0,       0,       0,       0,       0,       0,       0,       // 0x008x
} ;




// TMINTER
static const unsigned short TmTminterToUnicode [] = {
      0x0020,  0x00C4,  0x00CF,  0x00DC,  0x00CB,  0x00D6,  0x00C5,  0x00CE,  // 0x002x
      0x00DB,  0x00CA,  0x00D4,  0x00C7,  0x002C,  0x002D,  0x002E,  0x0152,  
      0x00DF,  0x00E4,  0x00EF,  0x00FC,  0x00EB,  0x00F6,  0x00E5,  0x00EE,  // 0x003x
      0x00FB,  0x00EA,  0x00F4,  0x00E7,  0x0069,  0x00C8,  0x00BF,  0x0153,  
      0x00F1,  0x0041,  0x0042,  0x0043,  0x0044,  0x0045,  0x0046,  0x0047,  // 0x004x
      0x0048,  0x0049,  0x004A,  0x004B,  0x004C,  0x004D,  0x004E,  0x004F,  
      0x0050,  0x0051,  0x0052,  0x0053,  0x0054,  0x0055,  0x0056,  0x0057,  // 0x005x
      0x0058,  0x0059,  0x005A,  0x00E9,  0x00E0,  0x00F9,  0x00E8,  0x005F,  
      0x0060,  0x0061,  0x0062,  0x0063,  0x0064,  0x0065,  0x0066,  0x0067,  // 0x006x
      0x0068,  0x0069,  0x006A,  0x006B,  0x006C,  0x006D,  0x006E,  0x006F,  
      0x0070,  0x0071,  0x0072,  0x0073,  0x0074,  0x0075,  0x0076,  0x0077,  // 0x007x
      0x0078,  0x0079,  0x007A,  0x00C9,  0x00C0,  0x00D9,  0x00D1,  0x007F,  
      0x00A8,  0,       0,       0,       0,       0,       0,       0,       // 0x008x
} ;




typedef struct {
   const char *szName ;
   const unsigned short *pTable ;
} TM_FONTNAME_TO_TABLE ;


static TM_FONTNAME_TO_TABLE TmFontNameToTable [] = {
   { "ASCII", TmAsciiToUnicode, },  // 昁偢侾斣栚偵
   { "INTERNAL", TmInternalToUnicode, },  // 昁偢俀斣栚偵
   { "SYMBOL", TmSymbolToUnicode, },   // 昁偢俁斣栚偵
   { "AENGLISH", TmAenglishToUnicode, },
   { "CANADIAN", TmCanadianToUnicode, },
   { "DUTCH", TmDutchToUnicode, },
   { "FINISH", TmFinishToUnicode, },
   { "FRENCH", TmFrenchToUnicode, },
   { "GERMAN", TmGermanToUnicode, },
   { "GREEK", TmGreekToUnicode, },
   { "ITALIAN", TmItalianToUnicode, },
   { "JENGLISH", TmJenglishToUnicode, },
   { "LATIN", TmLatinToUnicode, },
   { "NORWEGIA", TmNorwegiaToUnicode, },
   { "ORIGINAL", TmOriginalToUnicode, },
   { "POLAND", TmPolandToUnicode, },
   { "PORTUGUE", TmPortugueToUnicode, },
   { "RUSSIAN", TmRussianToUnicode, },
   { "SPANISH", TmSpanishToUnicode, },
   { "SWISS", TmSwissToUnicode, },
   { "TMINTER", TmTminterToUnicode, },
} ;

static const int TM_FONTNAME_TO_TABLE_NELEM = NELEMOF ( TmFontNameToTable ) ;



// 僥僋僲儊僀僩偺僼僅儞僩柤偐傜僥乕僽儖傪曉偡
// 幐攕偟偨傜 TmAsciiToUnicode 傪曉偡
const unsigned short *GetTm2uniTable ( const char *szFontName ) {

   for ( int nCount = 0 ; nCount < TM_FONTNAME_TO_TABLE_NELEM ; nCount ++ ) {
      if ( ! strheadcmp ( szFontName, ( TmFontNameToTable [ nCount ] ).szName ) ) {
         return ( TmFontNameToTable [ nCount ] ).pTable ;
      }
   }

   return TmAsciiToUnicode ;
}



// 僥僋僲儊僀僩偺僼僅儞僩柤偐傜僥乕僽儖傪曉偡
// 幐攕偟偨傜 TmAsciiToUnicode 傪曉偡
const unsigned short *GetTm2uniTableEx ( int nIndex ) {

   if ( nIndex < TM_FONTNAME_TO_TABLE_NELEM ) return ( TmFontNameToTable [ nIndex ] ).pTable ;

   return TmAsciiToUnicode ;
}



#endif

⌨️ 快捷键说明

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