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

📄 uninorm.cpp

📁 This software performs code conversion of Chinese characters, including GB2312/GBK and BIG5. It a
💻 CPP
📖 第 1 页 / 共 5 页
字号:
      0x8688,  0x870E,  0x86E2,  0x8779,  0x8728,  0x876B,  0x8786,  0x45D7,  
      0x87E1,  0x8801,  0x45F9,  0x8860,  0x8863,  0x7667,  0x88D7,  0x88DE,  // 0x2F9CX
      0x4635,  0x88FA,  0x34BB,  0x78AE,  0x7966,  0x46BE,  0x46C7,  0x8AA0,  
      0x8AED,  0x8B8A,  0x8C55,  0x7CA8,  0x8CAB,  0x8CC1,  0x8D1B,  0x8D77,  // 0x2F9DX
      0x7F2F,  0x0804,  0x8DCB,  0x8DBC,  0x8DF0,  0x08DE,  0x8ED4,  0x8F38,  
      0x85D2,  0x85ED,  0x9094,  0x90F1,  0x9111,  0x872E,  0x911B,  0x9238,  // 0x2F9EX
      0x92D7,  0x92D8,  0x927C,  0x93F9,  0x9415,  0x8BFA,  0x958B,  0x4995,  
      0x95B7,  0x8D77,  0x49E6,  0x96C3,  0x5DB2,  0x9723,  0x9145,  0x921A,  // 0x2F9FX
      0x4A6E,  0x4A76,  0x97E0,  0x940A,  0x4AB2,  0x9496,  0x980B,  0x980B,  
   } ;


   static const unsigned short UninormTable_2FA00 [] = {
      0x9829,  0x95B6,  0x98E2,  0x4B33,  0x9929,  0x99A7,  0x99C2,  0x99FE,  // 0x2FA0X
      0x4BCE,  0x9B30,  0x9B12,  0x9C40,  0x9CFD,  0x4CCE,  0x4CED,  0x9D67,  
      0xA0CE,  0x4CF8,  0xA105,  0xA20E,  0xA291,  0x9EBB,  0x4D56,  0x9EF9,  // 0x2FA1X
      0x9EFE,  0x9F05,  0x9F0F,  0x9F16,  0x9F3B,  0xA600,  0,       0,       
      0,       0,       0,       0,       0,       0,       0,       0,       // 0x2FA2X
      0,       0,       0,       0,       0,       0,       0,       0,       
      0,       0,       0,       0,       0,       0,       0,       0,       // 0x2FA3X
      0,       0,       0,       0,       0,       0,       0,       0,       
      0,       0,       0,       0,       0,       0,       0,       0,       // 0x2FA4X
      0,       0,       0,       0,       0,       0,       0,       0,       
      0,       0,       0,       0,       0,       0,       0,       0,       // 0x2FA5X
      0,       0,       0,       0,       0,       0,       0,       0,       
      0,       0,       0,       0,       0,       0,       0,       0,       // 0x2FA6X
      0,       0,       0,       0,       0,       0,       0,       0,       
      0,       0,       0,       0,       0,       0,       0,       0,       // 0x2FA7X
      0,       0,       0,       0,       0,       0,       0,       0,       
      0,       0,       0,       0,       0,       0,       0,       0,       // 0x2FA8X
      0,       0,       0,       0,       0,       0,       0,       0,       
      0,       0,       0,       0,       0,       0,       0,       0,       // 0x2FA9X
      0,       0,       0,       0,       0,       0,       0,       0,       
      0,       0,       0,       0,       0,       0,       0,       0,       // 0x2FAAX
      0,       0,       0,       0,       0,       0,       0,       0,       
      0,       0,       0,       0,       0,       0,       0,       0,       // 0x2FABX
      0,       0,       0,       0,       0,       0,       0,       0,       
      0,       0,       0,       0,       0,       0,       0,       0,       // 0x2FACX
      0,       0,       0,       0,       0,       0,       0,       0,       
      0,       0,       0,       0,       0,       0,       0,       0,       // 0x2FADX
      0,       0,       0,       0,       0,       0,       0,       0,       
      0,       0,       0,       0,       0,       0,       0,       0,       // 0x2FAEX
      0,       0,       0,       0,       0,       0,       0,       0,       
      0,       0,       0,       0,       0,       0,       0,       0,       // 0x2FAFX
      0,       0,       0,       0,       0,       0,       0,       0,       
   } ;


   const unsigned short *pUninormTable = NULL ;

   switch ( cUnicode >> 8 ) {
      case 0xF900 >> 8 : pUninormTable = UninormTable_F900 ; break ;
      case 0xFA00 >> 8 : pUninormTable = UninormTable_FA00 ; break ;
      case 0x1D400 >> 8 : pUninormTable = UninormTable_1D400 ; break ;
      case 0x1D500 >> 8 : pUninormTable = UninormTable_1D500 ; break ;
      case 0x1D600 >> 8 : pUninormTable = UninormTable_1D600 ; break ;
      case 0x1D700 >> 8 : pUninormTable = UninormTable_1D700 ; break ;
      case 0x2F800 >> 8 : pUninormTable = UninormTable_2F800 ; break ;
      case 0x2F900 >> 8 : pUninormTable = UninormTable_2F900 ; break ;
      case 0x2FA00 >> 8 : pUninormTable = UninormTable_2FA00 ; break ;
   }

   if ( pUninormTable ) {
      switch ( cUnicode ) {
         case 0xFACF :
         case 0xFAD0 :
         case 0xFAD1 :
         case 0xFAD5 :
         case 0xFAD6 :
         case 0xFAD7 :
         case 0x2F803 :
         case 0x2F80D :
         case 0x2F812 :
         case 0x2F816 :
         case 0x2F81C :
         case 0x2F834 :
         case 0x2F838 :
         case 0x2F859 :
         case 0x2F860 :
         case 0x2F861 :
         case 0x2F86C :
         case 0x2F871 :
         case 0x2F87B :
         case 0x2F87D :
         case 0x2F889 :
         case 0x2F88F :
         case 0x2F891 :
         case 0x2F892 :
         case 0x2F897 :
         case 0x2F898 :
         case 0x2F8A4 :
         case 0x2F8B8 :
         case 0x2F8BE :
         case 0x2F8CA :
         case 0x2F8DD :
         case 0x2F8E3 :
         case 0x2F8EC :
         case 0x2F8F0 :
         case 0x2F8F7 :
         case 0x2F8F8 :
         case 0x2F8F9 :
         case 0x2F8FB :
         case 0x2F906 :
         case 0x2F90D :
         case 0x2F910 :
         case 0x2F911 :
         case 0x2F91B :
         case 0x2F91D :
         case 0x2F91F :
         case 0x2F923 :
         case 0x2F926 :
         case 0x2F927 :
         case 0x2F935 :
         case 0x2F937 :
         case 0x2F939 :
         case 0x2F93B :
         case 0x2F93C :
         case 0x2F93D :
         case 0x2F941 :
         case 0x2F942 :
         case 0x2F943 :
         case 0x2F944 :
         case 0x2F94D :
         case 0x2F952 :
         case 0x2F954 :
         case 0x2F955 :
         case 0x2F95C :
         case 0x2F95D :
         case 0x2F95E :
         case 0x2F961 :
         case 0x2F965 :
         case 0x2F96B :
         case 0x2F972 :
         case 0x2F973 :
         case 0x2F975 :
         case 0x2F977 :
         case 0x2F97B :
         case 0x2F97C :
         case 0x2F97E :
         case 0x2F980 :
         case 0x2F987 :
         case 0x2F988 :
         case 0x2F989 :
         case 0x2F98A :
         case 0x2F997 :
         case 0x2F9A4 :
         case 0x2F9A5 :
         case 0x2F9A6 :
         case 0x2F9AB :
         case 0x2F9AD :
         case 0x2F9B0 :
         case 0x2F9B1 :
         case 0x2F9C5 :
         case 0x2F9CB :
         case 0x2F9CC :
         case 0x2F9D3 :
         case 0x2F9D8 :
         case 0x2F9D9 :
         case 0x2F9DD :
         case 0x2F9E0 :
         case 0x2F9E1 :
         case 0x2F9E5 :
         case 0x2F9ED :
         case 0x2F9F1 :
         case 0x2F9F6 :
         case 0x2F9F7 :
         case 0x2F9FB :
         case 0x2F9FD :
         case 0x2FA01 :
         case 0x2FA09 :
         case 0x2FA10 :
         case 0x2FA12 :
         case 0x2FA13 :
         case 0x2FA14 :
         case 0x2FA1D :
            return pUninormTable [ cUnicode & 0xFF ] + 0x20000 ;
         default :
            return pUninormTable [ cUnicode & 0xFF ] ;
      }
   }

   return 0 ;
}



////////////////////////////////////////////
//              昞帵梡暥帤                //
////////////////////////////////////////////



// 昞帵宍傪捠忢偺暥帤偵
const wchar_t *GetUnicodePresentationForm ( int cUnicode ) {


   static const wchar_t *const PresentationFormTable_FB00 [] = {
      /* 0xFB00 */   L"ff",
      /* 0xFB01 */   L"fi",
      /* 0xFB02 */   L"fl",
      /* 0xFB03 */   L"ffi",
      /* 0xFB04 */   L"ffl",
      /* 0xFB05 */   L"\x017F\x0074",
      /* 0xFB06 */   L"st",
      /* 0xFB07 */   NULL,
      /* 0xFB08 */   NULL,
      /* 0xFB09 */   NULL,
      /* 0xFB0A */   NULL,
      /* 0xFB0B */   NULL,
      /* 0xFB0C */   NULL,
      /* 0xFB0D */   NULL,
      /* 0xFB0E */   NULL,
      /* 0xFB0F */   NULL,
      /* 0xFB10 */   NULL,
      /* 0xFB11 */   NULL,
      /* 0xFB12 */   NULL,
      /* 0xFB13 */   L"\x0574\x0576",
      /* 0xFB14 */   L"\x0574\x0565",
      /* 0xFB15 */   L"\x0574\x056B",
      /* 0xFB16 */   L"\x057E\x0576",
      /* 0xFB17 */   L"\x0574\x056D",
      /* 0xFB18 */   NULL,
      /* 0xFB19 */   NULL,
      /* 0xFB1A */   NULL,
      /* 0xFB1B */   NULL,
      /* 0xFB1C */   NULL,
      /* 0xFB1D */   L"\x05D9\x05B4",
      /* 0xFB1E */   L"\x05BF",
      /* 0xFB1F */   L"\x05F2\x05B7",
      /* 0xFB20 */   L"\x05E2",
      /* 0xFB21 */   L"\x05D0",
      /* 0xFB22 */   L"\x05D3",
      /* 0xFB23 */   L"\x05D4",
      /* 0xFB24 */   L"\x05DB",
      /* 0xFB25 */   L"\x05DC",
      /* 0xFB26 */   L"\x05DD",
      /* 0xFB27 */   L"\x05E8",
      /* 0xFB28 */   L"\x05EA",
      /* 0xFB29 */   L"\x002B",
      /* 0xFB2A */   L"\x05E9\x05C1",
      /* 0xFB2B */   L"\x05E9\x05C2",
      /* 0xFB2C */   L"\x05E9\x05BC\x05C1",
      /* 0xFB2D */   L"\x05E9\x05BC\x05C2",
      /* 0xFB2E */   L"\x05D0\x05B7",
      /* 0xFB2F */   L"\x05D0\x05B8",
      /* 0xFB30 */   L"\x05D0\x05BC",
      /* 0xFB31 */   L"\x05D1\x05BC",
      /* 0xFB32 */   L"\x05D2\x05BC",
      /* 0xFB33 */   L"\x05D3\x05BC",
      /* 0xFB34 */   L"\x05D4\x05BC",
      /* 0xFB35 */   L"\x05D5\x05BC",
      /* 0xFB36 */   L"\x05D6\x05BC",
      /* 0xFB37 */   NULL,
      /* 0xFB38 */   L"\x05D8\x05BC",
      /* 0xFB39 */   L"\x05D9\x05BC",
      /* 0xFB3A */   L"\x05DA\x05BC",
      /* 0xFB3B */   L"\x05DB\x05BC",
      /* 0xFB3C */   L"\x05DC\x05BC",
      /* 0xFB3D */   NULL,
      /* 0xFB3E */   L"\x05DE\x05BC",
      /* 0xFB3F */   NULL,
      /* 0xFB40 */   L"\x05E0\x05BC",
      /* 0xFB41 */   L"\x05E1\x05BC",
      /* 0xFB42 */   NULL,
      /* 0xFB43 */   L"\x05E3\x05BC",
      /* 0xFB44 */   L"\x05E4\x05BC",
      /* 0xFB45 */   NULL,
      /* 0xFB46 */   L"\x05E6\x05BC",
      /* 0xFB47 */   L"\x05E7\x05BC",
      /* 0xFB48 */   L"\x05E8\x05BC",
      /* 0xFB49 */   L"\x05E9\x05BC",
      /* 0xFB4A */   L"\x05EA\x05BC",
      /* 0xFB4B */   L"\x05D5\x05B9",
      /* 0xFB4C */   L"\x05D1\x05BF",
      /* 0xFB4D */   L"\x05DB\x05BF",
      /* 0xFB4E */   L"\x05E4\x05BF",
      /* 0xFB4F */   L"\x05D0\x05DC",
      /* 0xFB50 */   L"\x0671",
      /* 0xFB51 */   L"\x0671",
      /* 0xFB52 */   L"\x067B",
      /* 0xFB53 */   L"\x067B",
      /* 0xFB54 */   L"\x067B",
      /* 0xFB55 */   L"\x067B",
      /* 0xFB56 */   L"\x067E",
      /* 0xFB57 */   L"\x067E",
      /* 0xFB58 */   L"\x067E",
      /* 0xFB59 */   L"\x067E",
      /* 0xFB5A */   L"\x0680",
      /* 0xFB5B */   L"\x0680",
      /* 0xFB5C */   L"\x0680",
      /* 0xFB5D */   L"\x0680",
      /* 0xFB5E */   L"\x067A",
      /* 0xFB5F */   L"\x067A",
      /* 0xFB60 */   L"\x067A",
      /* 0xFB61 */   L"\x067A",
      /* 0xFB62 */   L"\x067F",
      /* 0xFB63 */   L"\x067F",
      /* 0xFB64 */   L"\x067F",
      /* 0xFB65 */   L"\x067F",

⌨️ 快捷键说明

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