www.pudn.com > hrfont.rar > hrfont.c
/*************************************************** ** ** ** ÊäÈë·¨²âÊÔ³ÌÐò ** ****************************************************/ #include#include #include typedef unsigned char uchar; typedef unsigned int uint; typedef struct _hzfont{ uchar m_fontcode[2]; struct _hzfont * m_pPre; struct _hzfont * m_pNext; }hzfont,*phzfont; typedef struct _hzlist{ struct _hzlist * m_plist[26]; phzfont m_pfont; }hzlist,*phzlist; hzlist hrlist; int InsertCode(char* pcode,char *pname) { phzlist pnewlist,ptmplist; phzfont pnewfont,ptmpfont; ptmplist = &hrlist; while(*pcode) { if(ptmplist->m_plist[*pcode - 0x61] == NULL) { pnewlist = (phzlist)malloc(sizeof(hzlist)); memset(pnewlist,0,sizeof(hzlist)); ptmplist->m_plist[*(pcode) - 0x61] = pnewlist; } ptmplist = ptmplist->m_plist[*(pcode++) - 0x61]; } ptmpfont = ptmplist->m_pfont; /* pnewfont = (phzfont)malloc(sizeof(hzfont)); pnewfont->m_fontcode[0] = *pname; pnewfont->m_fontcode[1] = *(pname+1); pnewfont->m_pPre = NULL; pnewfont->m_pNext = NULL; */ if(ptmpfont) { while(ptmpfont->m_pNext) ptmpfont = ptmpfont->m_pNext; // pnewfont->m_pPre = ptmpfont; // ptmpfont->m_pNext = pnewfont; } else //ptmplist->m_pfont = pnewfont; { pnewfont = (phzfont)malloc(sizeof(hzfont)); pnewfont->m_fontcode[0] = *(pname++); pnewfont->m_fontcode[1] = *(pname++); pnewfont->m_pPre = NULL; pnewfont->m_pNext = NULL; ptmplist->m_pfont = pnewfont; ptmpfont = pnewfont; } while(*pname) { pnewfont = (phzfont)malloc(sizeof(hzfont)); pnewfont->m_fontcode[0] = *(pname++); pnewfont->m_fontcode[1] = *(pname++); pnewfont->m_pPre = NULL; pnewfont->m_pNext = NULL; pnewfont->m_pPre = ptmpfont; ptmpfont->m_pNext = pnewfont; ptmpfont = ptmpfont->m_pNext; } return 0; } int SearchFontCode(phzlist plist,char *pcode) { phzfont ptmpfont = NULL; int loop = 0; int count = 0; if(!plist) return 0; ptmpfont = plist->m_pfont ; while(ptmpfont) { pcode[loop++] = ptmpfont->m_fontcode[0]; pcode[loop++] = ptmpfont->m_fontcode[1]; ptmpfont = ptmpfont->m_pNext; } //µÝ¹éµ÷ÓÃ,µÃµ½ÏàËÆ×ÖÌå for(count = 0 ; count < 26 ; count++) loop += SearchFontCode(plist->m_plist[count],pcode+loop); return loop; } int SearchCode(char *pcode , char *pname) { phzlist ptmplist = NULL; phzfont ptmpfont = NULL; phzlist ptmplist2 = NULL; int loop = 0; int serindex = 0; ptmplist = &hrlist; while(*pcode) { ptmplist = ptmplist->m_plist[*(pcode++) - 0x61]; if(!ptmplist) return 0; } return SearchFontCode(ptmplist,pname); } int FreeFontCach(phzlist plist) { int i = 0; phzfont ptmpfont1 = NULL; phzfont ptmpfont2 = NULL; if(!plist) return 0; ptmpfont1 = plist->m_pfont; while(ptmpfont1) { ptmpfont2 = ptmpfont1->m_pNext; free(ptmpfont1); ptmpfont1 = ptmpfont2; } for(i = 0; i < 26 ; i++) { FreeFontCach(plist->m_plist[i]); } /* if(plist) { free(plist); plist = NULL; } */ return 0; } void Init_Font_Code(void) { InsertCode("a","°¢°¡ß¹ï¹àĺÇëç"); InsertCode("ai","°¥°§°¦°£°¤°¨°©°«°ª°¬°®°¯°"); InsertCode("an","°²°±°°°³°¶°´°¸°·°µ"); InsertCode("ang","°¹°º°»"); InsertCode("ao","°¼°½°¾°¿°À°Á°Â°Ä°Ã"); InsertCode("ba","°Ë°Í°È°Ç°É°Å°Ì°Æ°Ê°Î°Ï°Ñ°Ð°Ó°Ö°Õ°Ô"); InsertCode("bai","°×°Ù°Û°Ø°Ú°Ü°Ý°Þ"); InsertCode("ban","°â°à°ã°ä°ß°á°å°æ°ì°ë°é°ç°è°í°ê"); InsertCode("bang","°î°ï°ð°ó°ñ°ò°ö°ø°ô°ù°õ°÷"); InsertCode("bao","°ü°ú°û°ý±¢±¦±¥±£±¤±¨±§±ª±«±©±¬°þ±¡ÆÙ"); InsertCode("bei","±°±±¯±®±±±´±·±¸±³±µ±¶±»±¹±º±²"); InsertCode("ben","±¼±¾±½±¿º»"); InsertCode("beng","±À±Á±Â±Ã±Å±Ä"); InsertCode("bi","±Æ±Ç±È±Ë±Ê±É±Ò±Ø±Ï±Õ±Ó±Ñ±Ý±Ð±Ö±Ô±Í±×±Ì±Î±Ú±Ü±Û"); InsertCode("bian","±ß±à±Þ±á±â±å±ã±ä±é±æ±ç±è"); InsertCode("biao","±ë±ê±ì±í"); InsertCode("bie","±ï±î±ð±ñ"); InsertCode("bin","±ö±ò±ó±õ±ô±÷"); InsertCode("bing","±ù±ø±û±ü±ú±þ±ý²¢²¡"); InsertCode("bo","²¦²¨²£²§²±²¤²¥²®²µ²¯²´²ª²¬²°²©²³²«²²²²·"); InsertCode("bu","²¹²¸²¶²»²¼²½²À²¿²º²¾"); InsertCode("ca","²Áàêíå"); InsertCode("cai","²Â²Å²Ä²Æ²Ã²É²Ê²Ç²È²Ë²Ì"); InsertCode("can","²Î²Í²Ð²Ï²Ñ²Ò²Ó"); InsertCode("cang","²Ö²×²Ô²Õ²Ø"); InsertCode("cao","²Ù²Ú²Ü²Û²Ý"); InsertCode("ce","²á²à²Þ²â²ß"); InsertCode("cen","²ã²äÔø"); InsertCode("cha","²æ²å²é²ç²è²ë²ì²ê²í²ï²îɲ"); InsertCode("chai","²ð²ñ²ò"); InsertCode("chan","²ô²ó²÷²ö²ø²õ²ú²ù²û²ü"); InsertCode("chang","²ý²þ³¦³¢³¥³£³§³¡³¨³©³«³ª"); InsertCode("chao","³³®³¬³²³¯³°³±³³³´´Â"); InsertCode("che","³µ³¶³¹³¸³·³º"); InsertCode("chen","³»³¾³¼³À³Á³½³Â³¿³Ä³Ã"); InsertCode("cheng","³Æ³Å³É³Ê³Ð³Ï³Ç³Ë³Í³Ì³Î³È³Ñ³Ò³Ó"); InsertCode("chi","³Ô³Õ³Ú³Ø³Û³Ù³Ö³ß³Þ³Ý³Ü³â³à³ã³á"); InsertCode("chong","³ä³å³æ³ç³è"); InsertCode("chou","³é³ð³ñ³ë³î³í³ï³ê³ì³ó³ò³ô"); InsertCode("chu","³ö³õ³ý³ø³ü³ú³û³÷³ù´¡´¢³þ´¦´¤´¥´£Ðó"); InsertCode("chuai","´§"); InsertCode("chuan","´¨´©´«´¬´ª´´®"); InsertCode("chuang","´³´¯´°´²´´"); InsertCode("chui","´µ´¶´¹´·´¸"); InsertCode("chun","´º´»´¿´½´¾´¼´À"); InsertCode("chuo","´Á"); InsertCode("ci","´Ã´Ê´Ä´É´È´Ç´Å´Æ´Ë´Î´Ì´Í"); InsertCode("cong","´Ñ´Ó´Ò´Ð´Ï´Ô"); InsertCode("cou","´Õ"); InsertCode("cu","´Ö´Ù´×´Ø"); InsertCode("cuan","´Ú´Ü´Û"); InsertCode("cui","´Þ´ß´Ý´à´ã´á´â´ä"); InsertCode("cun","´å´æ´ç"); InsertCode("cuo","´ê´è´é´ì´ë´í"); InsertCode("da","´î´ï´ð´ñ´ò´ó"); InsertCode("dai","´ô´õ´ö´ú´ø´ýµ¡´ù´û´ü´þ´÷"); InsertCode("dan","µ¤µ¥µ£µ¢µ¦µ¨µ§µ©µ«µ®µ¯µ¬µµ°µª"); InsertCode("dang","µ±µ²µ³µ´µµ"); InsertCode("dao","µ¶µ¼µºµ¹µ·µ»µ¸µ½µ¿µÁµÀµ¾"); InsertCode("de","µÄµØµÃµÂï½"); InsertCode("deng","µÆµÇµÅµÈµËµÊµÉ"); InsertCode("di","µÍµÌµÎµÒµÏµÐµÓµÑµÕµ×µÖµØµÜµÛµÝµÚµÞµÙ"); InsertCode("dian","µàµáµßµäµãµâµçµèµéµêµæµëµíµìµîµå"); InsertCode("diao","µóµðµòµïµñµõµöµô"); InsertCode("die","µùµøµüµýµþµúµû"); InsertCode("ding","¶¡¶£¶¢¶¤¶¥¶¦¶©¶¨¶§"); InsertCode("diu","¶ª"); InsertCode("dong","¶«¶¬¶¶®¶¯¶³¶±¶²¶°¶´"); InsertCode("dou","¶¼¶µ¶·¶¶¶¸¶¹¶º¶»"); InsertCode("du","¶½¶¾¶Á¶¿¶À¶Â¶Ä¶Ã¶Ê¶Å¶Ç¶È¶É¶Æ"); InsertCode("duan","¶Ë¶Ì¶Î¶Ï¶Ð¶Í"); InsertCode("dui","¶Ñ¶Ó¶Ô¶Ò"); InsertCode("dun","¶Ö¶Ø¶Õ¶×¶Ü¶Û¶Ù¶Ý"); InsertCode("duo","¶à¶ß¶á¶Þ¶ä¶â¶ã¶ç¶é¶æ¶è¶å"); InsertCode("e","¶ï¶í¶ð¶ë¶ì¶ê¶î¶ò¶ó¶ñ¶ö¶õ¶ô"); InsertCode("en","¶÷"); InsertCode("er","¶ù¶ø¶û¶ú¶ý¶ü¶þ·¡"); InsertCode("fa","·¢·¦·¥·£·§·¤·¨·©"); InsertCode("fan","·«·¬··ª·²·¯·°·³·®·±·´·µ·¸·º·¹·¶··"); InsertCode("fang","·½·»·¼·À·Á·¿·¾·Â·Ã·Ä·Å"); InsertCode("fei","·É·Ç·È·Æ·Ê·Ë·Ì·Í·Ï·Ð·Î·Ñ"); InsertCode("fen","·Ö·Ô·×·Ò·Õ·Ó·Ø·Ú·Ù·Û·Ý·Ü·Þ·ß·à"); InsertCode("feng","·á·ç·ã·â·è·å·é·æ·ä·ë·ê·ì·í·ï·î"); InsertCode("fo","·ð"); InsertCode("fou","·ñ"); InsertCode("fu","·ò·ô·õ·ó¸¥·ü·ö·÷·þ·ý·ú¸¡¸¢·û¸¤·ù¸£·ø¸§¸¦¸®¸«¸©¸ª¸¨¸¸¯¸¸¸¼¸¶¸¾¸º¸½¸À¸·¸´¸°¸±¸µ¸»¸³¸¿¸¹¸²"); InsertCode("ga","¸Â¸Á"); InsertCode("gai","¸Ã¸Ä¸Æ¸Ç¸È¸Å"); InsertCode("gan","¸É¸Ê¸Ë¸Î¸Ì¸Í¸Ñ¸Ï¸Ò¸Ð¸Ó"); InsertCode("gang","¸Ô¸Õ¸Ú¸Ù¸Ø¸×¸Ö¸Û¸Ü"); InsertCode("gao","¸Þ¸á¸ß¸à¸Ý¸â¸ã¸å¸ä¸æ"); InsertCode("ge","¸ê¸í¸ç¸ì¸ë¸î¸é¸è¸ó¸ï¸ñ¸ð¸ô¸ö¸÷¸õ¿©"); InsertCode("gei","¸ø"); InsertCode("gen","¸ù¸ú"); InsertCode("geng","¸ü¸ý¸û¸þ¹¡¹¢¹£"); InsertCode("gong","¹¤¹¹«¹¦¹¥¹©¹¬¹§¹ª¹¨¹®¹¯¹°¹²¹±"); InsertCode("gou","¹´¹µ¹³¹·¹¶¹¹¹º¹¸¹»"); InsertCode("gu","¹À¹¾¹Ã¹Â¹Á¹½¹¼¹¿¹Å¹È¹É¹Ç¹Æ¹Ä¹Ì¹Ê¹Ë¹Í"); InsertCode("gua","¹Ï¹Î¹Ð¹Ñ¹Ò¹Ó"); InsertCode("guai","¹Ô¹Õ¹Ö"); InsertCode("guan","¹Ø¹Û¹Ù¹Ú¹×¹Ý¹Ü¹á¹ß¹à¹Þ"); InsertCode("guang","¹â¹ã¹ä"); InsertCode("gui","¹é¹ç¹ê¹æ¹ë¹è¹å¹ì¹î¹ï¹í¹ô¹ñ¹ó¹ð¹ò"); InsertCode("gun","¹õ¹ö¹÷"); InsertCode("guo","¹ù¹ø¹ú¹û¹ü¹ý"); InsertCode("ha","¸ò¹þ"); InsertCode("hai","º¢º¡º£º¥º§º¦º¤"); InsertCode("han","º¨º©º¬ºªº¯ºº®º«º±º°ººº¹ºµº·º´º¸º¶º³º²"); InsertCode("hang","º¼º½ÐÐ"); InsertCode("hao","ºÁºÀº¿º¾ºÃºÂºÅºÆºÄ"); InsertCode("he","ºÇºÈºÌºÏºÎºÍºÓºÒºËºÉºÔºÐºÊºØºÖºÕº×"); InsertCode("hei","ºÚºÙ"); InsertCode("hen","ºÛºÜºÝºÞ"); InsertCode("heng","ºàºßºãºáºâ"); InsertCode("hong","ºäºåºæºëºìºêºéºçºè"); InsertCode("hou","ºîºíºïºðºóºñºò"); InsertCode("hu","ºõºôºö»¡ºüºúºøºþºùº÷ºýºû»¢»£»¥»§»¤»¦"); InsertCode("hua","»¨»ª»©»¬»«»¯»®»»°"); InsertCode("huai","»³»²»´»±»µ"); InsertCode("huan","»¶»¹»·»¸»º»Ã»Â»½»»»Á»¼»À»¾»¿"); InsertCode("huang","»Ä»Å»Ê»Ë»Æ»Ì»Í»È»Ç»É»Ð»Î»Ñ»Ï"); InsertCode("hui","»Ò»Ö»Ó»Ô»Õ»Ø»×»Ú»Ü»ã»á»ä»æ»å»â»ß»Þ»à»Ý»Ù»Û"); InsertCode("hun","»è»ç»é»ë»ê»ì"); InsertCode("huo","»í»î»ð»ï»ò»õ»ñ»ö»ó»ô"); InsertCode("ji","¼¥»÷¼¢»ø»ú¼¡¼¦¼£¼§»ý»ù¼¨¼©»û»þ»ü¼¤¼°¼ª¼³¼¶¼´¼«¼±¼²¼¬¼¯¼µ¼¼®¼¸¼º¼·¼¹¼Æ¼Ç¼¿¼Í¼Ë¼É¼¼¼Ê¼Á¼¾¼È¼Ã¼Ì¼Å¼Ä¼Â¼À¼»¼½½å"); InsertCode("jia","¼Ó¼Ð¼Ñ¼Ï¼Ò¼Î¼Ô¼Õ¼×¼Ö¼Ø¼Û¼Ý¼Ü¼Ù¼Þ¼ÚЮ"); InsertCode("jian","¼é¼â¼á¼ß¼ä¼ç¼è¼æ¼à¼ã¼ê¼å¼ð¼ó¼í¼ë¼ñ¼õ¼ô¼ì¼ï¼ò¼î¼û¼þ½¨½¤½£¼ö¼ú½¡½§½¢½¥½¦¼ù¼ø¼ü¼ý"); InsertCode("jiang","½½ª½«½¬½©½®½²½±½°½¯½³½µ½´"); InsertCode("jiao","½»½¼½¿½½½¾½º½·½¹½¶½¸½Ç½Æ½Ê½È½Ã½Å½Â½Á½Ë½É½Ð½Î½Ï½Ì½Ñ½Í¾õ½À"); InsertCode("jie","½×½Ô½Ó½Õ½Ò½Ö½Ú½Ù½Ü½à½á½Ý½Þ½Ø½ß½ã½â½é½ä½æ½ì½ç½ê½ë½è"); InsertCode("jin","½í½ñ½ï½ð½ò½î½ó½ö½ô½÷½õ¾¡¾¢½ü½ø½ú½þ½ý½û½ù"); InsertCode("jing","¾©¾¾¥¾£¾ª¾§¾¦¾¬¾¤¾«¾¨¾®¾±¾°¾¯¾»¾¶¾·¾º¾¹¾´¾¸¾³¾²¾µ"); InsertCode("jiong","¾¼¾½"); InsertCode("jiu","¾À¾¿¾¾¾Å¾Ã¾Ä¾Á¾Â¾Æ¾É¾Ê¾Ì¾Î¾Ç¾È¾Í¾Ë"); InsertCode("ju","¾Ó¾Ð¾Ñ¾Ô¾Ò¾Ï¾Ö½Û¾Õ¾×¾Ú¾Ù¾Ø¾ä¾Þ¾Ü¾ß¾æ¾ã¾ç¾å¾Ý¾à¾â¾Û¾á"); InsertCode("jua","¾ê¾è¾é¾í¾ë¾î¾ì"); InsertCode("jue","¾ï¾ö¾÷¾ñ¾ø¾ó¾ò¾ô¾ð"); InsertCode("jun","¾ü¾ý¾ù¾û¾ú¿¡¿¤¾þ¿£¿¥¿¢"); InsertCode("ka","¿§¿¦¿¨"); InsertCode("kai","¿ª¿«¿¿®¿¬"); InsertCode("kan","¼÷¿¯¿±¿°¿²¿³¿´"); InsertCode("kang","¿µ¿¶¿·¿¸¿º¿¹¿»"); InsertCode("kao","¿¼¿½¿¾¿¿"); InsertCode("ke","¿À¿Á¿Â¿Æ¿Ã¿Å¿Ä¿Ç¿È¿É¿Ê¿Ë¿Ì¿Í¿Î"); InsertCode("ken","¿Ï¿Ñ¿Ò¿Ð"); InsertCode("keng","¿Ô¿Ó"); InsertCode("kong","¿Õ¿×¿Ö¿Ø"); InsertCode("kou","¿Ù¿Ú¿Û¿Ü"); InsertCode("ku","¿Ý¿Þ¿ß¿à¿â¿ã¿á"); InsertCode("kua","¿ä¿å¿æ¿è¿ç"); InsertCode("kuai","¿é¿ì¿ë¿ê"); InsertCode("kuan","¿í¿î"); InsertCode("kuang","¿ï¿ð¿ñ¿ö¿õ¿ó¿ò¿ô"); InsertCode("kui","¿÷¿ù¿ø¿ú¿ü¿û¿ý¿þÀ¢À£À¡"); InsertCode("kun","À¤À¥À¦À§"); InsertCode("kuo","À©À¨À«Àª"); InsertCode("la","À¬ÀÀ²À®À°À¯À±"); InsertCode("lai","À´À³Àµ"); InsertCode("lan","À¼À¹À¸À·À»À¶À¾À½ÀºÀÀÀ¿ÀÂÀÁÀÃÀÄ"); InsertCode("lang","ÀÉÀÇÀÈÀÅÀÆÀÊÀË"); InsertCode("lao","ÀÌÀÍÀÎÀÏÀÐÀÑÀÔÀÓÀÒ"); InsertCode("le","ÀÖÀÕÁË"); InsertCode("lei","À×ÀØÀÝÀÚÀÙÀÜÀßÀáÀàÀÛÀÞ"); InsertCode("leng","ÀâÀãÀä"); InsertCode("li","ÀåÀæÀêÀëÀòÀçÀìÁ§ÀèÀéÀñÀîÀïÁ¨ÀíÀðÁ¦ÀúÀ÷Á¢ÀôÀöÀûÀøÁ¤ÀýÁ¥ÀþÀóÀõÀùÁ£ÀüÁ¡"); InsertCode("lian","Á¬Á±Á¯Á°Á«ÁªÁ®ÁÁ²Á³Á·Á¶ÁµÁ´"); InsertCode("liang","Á©Á¼Á¹ÁºÁ¸Á»Á½ÁÁÁÂÁ¾ÁÀÁ¿"); InsertCode("liao","ÁÊÁÉÁÆÁÄÁÅÁÈÁÎÁÃÁÇÁÍÁÏÁÌ"); InsertCode("lie","ÁÐÁÓÁÒÁÔÁÑ"); InsertCode("lin","ÁÚÁÖÁÙÁÜÁÕÁØÁ×ÁÛÁÝÁßÁÞÁà"); InsertCode("ling","ÁæÁéÁëÁáÁèÁåÁêÁçÁâÁãÁäÁìÁîÁí"); InsertCode("liu","ÁïÁõÁ÷ÁôÁðÁòÁóÁñÁöÁøÁù"); InsertCode("long","ÁúÁüÁýÁû¡Áþ¤¢£"); InsertCode("lou","¦¥§¨ª©"); InsertCode("lu","¶¬®«¯Â±²°³½¼¸¹»µ·¾º´"); InsertCode("luang","ÂÏÂÍÂÎÂÐÂÑÂÒ"); InsertCode("lue","ÂÓÂÔï²"); InsertCode("lun","ÂÕÂØÂ×ÂÙÂÚÂÖÂÛàð"); InsertCode("luo","ÂÞÂÜÂßÂàÂáÂâÂÝÂãÂåÂçÂæÂä"); InsertCode("lv","ÂË¿ÂÀÂÂÂÃÂÁÂÅÂÆÂÄÂÉÂÇÂÊÂÌÂÈ"); InsertCode("ma","ÂèÂéÂíÂêÂëÂìÂîÂðÂï"); InsertCode("mai","ÂñÂòÂõÂóÂôÂö"); InsertCode("man","ÂùÂøÂ÷ÂúÂüáÂýÂþÂû"); InsertCode("mang","æâäãçå"); InsertCode("mao","èëìéêîÃïðóñò"); InsertCode("me","ô"); InsertCode("mei","ûöõü÷ýúøùÿÃÀþÃÃÃÁÃÄÃÂ"); InsertCode("men","ÃÅÃÆÃÇ"); InsertCode("meng","ÃÈÃËÃÊÃÍÃÉÃÌÃÏÃÎ"); InsertCode("mi","ÃÖÃÔÃÕÃÑÃÓÃÒÃ×ÃÐÃÚÃÙÃØÃÜÃÝÃÛ"); InsertCode("mian","ÃßÃàÃÞÃâÃãÃäÃáÃåÃæ"); InsertCode("miao","ÃçÃèÃéÃëÃìÃêÃîÃí"); InsertCode("mie","ÃðÃï"); InsertCode("min","ÃñÃóÃòÃöÃõÃô"); InsertCode("ming","ÃûÃ÷ÃùÃúÃøÃü"); InsertCode("miu","Ãý"); InsertCode("mo","ºÑÃþġģĤĦĥĢħĨĩÄİĪįĮīĬ"); InsertCode("mou","IJıij"); InsertCode("mu","ĸĶĵķĴľĿÄÁļĹĻÄÀĽĺÄÂ"); InsertCode("na","ÄÃÄÄÄÇÄÉÄÈÄÆÄÅ"); InsertCode("nai","ÄËÄÌÄÊÄÎÄÍ"); InsertCode("nan","ÄÐÄÏÄÑ"); InsertCode("nang","ÄÒ"); InsertCode("nao","ÄÓÄÕÄÔÄÖÄ×"); InsertCode("ne","ÄØ"); InsertCode("nei","ÄÚÄÙ"); InsertCode("nen","ÄÛ"); InsertCode("neng","ÄÜ"); InsertCode("ni","ÄÝÄáÄàÄßÄÞÄãÄâÄæÄäÄçÄå"); InsertCode("nian","ÄéÄêÄíÄìÄëÄîÄè"); InsertCode("niang","ÄïÄð"); InsertCode("niao","ÄñÄò"); InsertCode("nie","ÄóÄùÄôÄöÄ÷ÄøÄõ"); InsertCode("nin","Äú"); InsertCode("ning","ÄþÅ¡ÄüÄûÄýÅ¢"); InsertCode("niu","ţŤŦť"); InsertCode("nong","ũŨŧŪ"); InsertCode("nu","ūŬÅ"); InsertCode("nuan","ů"); InsertCode("nue","űŰ"); InsertCode("nuo","ŲŵųŴ"); InsertCode("nv","Å®"); InsertCode("o","Ŷ"); InsertCode("ou","ŷŹŸŻżźŽ"); InsertCode("pa","ſžÅÀ°ÒÅÃÅÁÅÂ"); InsertCode("pai","ÅÄÅÇÅÅÅÆÅÉÅÈ"); InsertCode("pan","ÅËÅÊÅÌÅÍÅÐÅÑÅÎÅÏ"); InsertCode("pang","ÅÒÅÓÅÔÅÕÅÖ"); InsertCode("pao","Å×ÅÙÅØÅÚÅÛÅÜÅÝ"); InsertCode("pei","ÅÞÅßÅãÅàÅâÅáÅæÅåÅä"); InsertCode("pen","ÅçÅè"); InsertCode("peng","ÅêÅéÅëÅóÅíÅïÅðÅîÅôÅìÅñÅòÅõÅö"); InsertCode("pi","±ÙÅúÅ÷ÅûÅøÅüÅùƤÅþƣơÅýƢƥƦƨƧƩ"); InsertCode("pian","ƬƫƪÆ"); InsertCode("piao","ƯƮưƱ"); InsertCode("pie","ƲƳ"); InsertCode("pin","ƴƶƵƷƸ"); InsertCode("ping","ƹƽÆÀƾƺƻÆÁƿƼ"); InsertCode("po","ÆÂÆÃÆÄÆÅÆÈÆÆÆÉÆÇ"); InsertCode("pou","ÆÊ"); InsertCode("pu","¸¬ÆÍÆËÆÌÆÎÆÐÆÑÆÓÆÔÆÒÆÖÆÕÆ×ÆØ"); InsertCode("qi","ÆßÆãÆÞÆâÆàÆÜÆÝÆÚÆÛÆáÆîÆëÆäÆæÆçÆíÆêÆéÆèÆïÆåÆìÆòÆóÆñÆôÆðÆøÆýÆùÆúÆûÆüÆõÆöÆ÷"); InsertCode("qia","ÆþǡǢ"); InsertCode("qian","ǧǪǤǨǥǣǦǫǩǰǮǯǬDZÇdzDzǴǷǵǶǸ"); InsertCode("qiang","ǺǼǹǻǿǽǾÇÀ"); InsertCode("qiao","ÇÄÇÃÇÂÇÁÇÇÇÈÇÅÇÆÇÉÇÎÇÍÇÏÇÌÇËÇÊ"); InsertCode("qie","ÇÐÇÑÇÒÇÓÇÔ"); InsertCode("qin","Ç×ÇÖÇÕÇÛÇØÇÙÇÝÇÚÇÜÇÞÇß"); InsertCode("qing","ÇàÇâÇáÇãÇäÇåÇçÇèÇæÇêÇëÇì"); InsertCode("qiong","ÇîÇí"); InsertCode("qiu","ÇðÇñÇïÇôÇóÇöÇõÇò"); InsertCode("qu","ÇøÇúÇýÇüÇùÇûÇ÷ÇþȡȢȣȥȤ"); InsertCode("quan","ȦȫȨȪÈȬȩȧȮȰȯ"); InsertCode("que","Ȳȱȳȴȸȷȵȶ"); InsertCode("qun","ȹȺ"); InsertCode("ra","ȻȼȽȾ"); InsertCode("ran","È¿ÈÂÈÀÈÁÈÃ"); InsertCode("rao","ÈÄÈÅÈÆ"); InsertCode("re","ÈÇÈÈßö"); InsertCode("ren","ÈËÈÊÈÉÈÌÈÐÈÏÈÎÈÒÈÑÈÍ"); InsertCode("reng","ÈÓÈÔ"); InsertCode("ri","ÈÕóR"); InsertCode("rong","ÈÖÈÞÈ×ÈÙÈÝÈÜÈØÈÛÈÚÈß"); InsertCode("rou","ÈáÈàÈâ"); InsertCode("ru","ÈçÈãÈåÈæÈäÈêÈéÈèÈëÈì"); InsertCode("ruan","ÈîÈí"); InsertCode("rui","ÈïÈñÈð"); InsertCode("run","ÈòÈó"); InsertCode("ruo","ÈôÈõ"); InsertCode("sa","ÈöÈ÷Èø"); InsertCode("sai","ÈûÈùÈúÈü"); InsertCode("san","ÈýÈþɡɢ"); InsertCode("sang","ɣɤɥ"); InsertCode("sao","ɦɧɨɩ"); InsertCode("se","ɫɬɪ"); InsertCode("sen","É"); InsertCode("seng","É®"); InsertCode("sha","ɱɳɴɰɯɵɶɷÏÃ"); InsertCode("shai","ɸɹõ§"); InsertCode("shan","ɽɾɼÉÀɺɿÉÁÉÂÉÇÉ»ÉÈÉÆÉÉÉÃÉÅÉÄÕ¤"); InsertCode("shang","ÉËÉÌÉÊÉÑÉÎÉÍÉÏÉÐ"); InsertCode("shao","ÉÓÉÒÉÕÉÔÉ×ÉÖÉØÉÙÉÛÉÜÉÚ"); InsertCode("she","ÉÝÉÞÉàÉßÉáÉèÉçÉäÉæÉâÉåÉã"); InsertCode("shen","ÉêÉìÉíÉëÉðÉïÉéÉîÉñÉòÉóÉôÉöÉõÉøÉ÷ʲ"); InsertCode("sheng","ÉýÉúÉùÉüʤÉûÉþʡʥʢʣ"); InsertCode("shi","³×ʬʧʦÊʫʩʨʪʮʯʱʶʵʰʴʳʷʸʹʼʻʺʿÊÏÊÀÊËÊÐʾʽÊÂÊÌÊÆÊÓÊÔÊÎÊÒÊÑÊÃÊÇÊÁÊÊÊÅÊÍÊÈÊÄÊÉËÆ"); InsertCode("shou","ÊÕÊÖÊØÊ×ÊÙÊÜÊÞÊÛÊÚÊÝ"); InsertCode("shu","ÊéÊãÊåÊàÊâÊáÊçÊèÊæÊäÊßÊëÊêÊìÊîÊòÊðÊóÊñÊíÊïÊõÊùÊøÊöÊ÷ÊúË¡ÊüÊýÊûÊþÊô"); InsertCode("shua","ˢˣà§"); InsertCode("shui","˥ˤ˦˧"); InsertCode("shuan","˩˨"); InsertCode("shuang","˫˪ˬ"); InsertCode("shui","Ëˮ˰˯˵"); InsertCode("shun","˱˳˴˲"); InsertCode("shuo","˵˸˷˶"); InsertCode("si","˿˾˽˼˹˻˺ËÀËÈËÄËÂËÅËÇËÃËÁ"); InsertCode("song","ËÉËËËÊËÏËÎËÐËÍËÌ"); InsertCode("sou","ËÔËÑËÒËÓ"); InsertCode("su","ËÕËÖË×ËßËàËØËÙËÚËÜËÝËÛ"); InsertCode("suan","ËáËâËãâ¡"); InsertCode("sui","ËäËçËåËæËèËêËîËìËéËíËë"); InsertCode("sun","ËïËðËñ"); InsertCode("suo","ËôËóËòËõËùË÷ËöËø"); InsertCode("ta","ËýËûËüËúËþ̡̢̤̣"); InsertCode("tai","̨̧̥̦̫Ì̬̩̪"); InsertCode("tan","̸̵̷̶̴̮̰̯̲̱̳̹̻̺̼̾̿̽"); InsertCode("tang","ÌÀÌÆÌÃÌÄÌÁÌÂÌÅÌÇÌÈÌÊÌÉÌÌÌË"); InsertCode("tao","ÌÎÌÐÌÍÌÏÌÓÌÒÌÕÌÔÌÑÌÖÌ×"); InsertCode("te","ÌØìý߯ï«í«"); InsertCode("teng","ÌÛÌÚÌÜÌÙ"); InsertCode("ti","ÌÞÌÝÌàÌßÌäÌáÌâÌãÌåÌëÌêÌéÌèÌæÌç"); InsertCode("tian","ÌìÌíÌïÌñÌðÌîÌóÌò"); InsertCode("tiao","µ÷ÌôÌõÌöÌ÷Ìø"); InsertCode("tie","ÌùÌúÌûÝÆ÷Ñ"); InsertCode("ting","ÌüÍ¡ÌýÌþͤͥͣͦͧ͢"); InsertCode("tong","ͨͬͮͩÍͯͪͫͳͱͰͲʹ"); InsertCode("tou","͵ͷͶ͸"); InsertCode("tu","͹ͺͻͼͽͿ;ÍÀÍÁÍÂÍÃ"); InsertCode("tuan","ÍÄÍÅî¶ÞÒåè"); InsertCode("tui","ÍÆÍÇÍÈÍËÍÉÍÊ"); InsertCode("tun","¶ÚÍÌÍÍÍÎ"); InsertCode("tuo","ÍÐÍÏÍÑÍÔÍÓÍÕÍÒÍ×ÍÖÍØÍÙ"); InsertCode("wa","ÍÛÍÞÍÚÍÝÍÜÍßÍà"); InsertCode("wai","ÍáÍâáË"); InsertCode("wan","ÍäÍåÍãÍèÍêÍæÍçÍéÍðÍìÍíÍñÍïÍîÍëÍòÍó"); InsertCode("wang","ÍôÍöÍõÍøÍùÍ÷ÍýÍüÍúÍû"); InsertCode("wei","ΣÍþ΢ΡΪΤΧΥΦΨΩάΫΰαβγÎίήÎÀδλζηθξνιμεοκ"); InsertCode("wen","ÎÂÎÁÎÄÎÆÎÅÎÃÎÇÎÉÎÈÎÊ"); InsertCode("weng","ÎÌÎËÎÍ"); InsertCode("wo","ÎÎÎÐÎÑÎÏÎÒÎÖÎÔÎÕÎÓ"); InsertCode("wu","ÎÚÎÛÎØÎ×ÎÝÎÜÎÙÎÞÎãÎâÎáÎßÎàÎåÎçÎéÎëÎäÎêÎæÎèÎðÎñÎìÎïÎóÎòÎîÎí"); InsertCode("xi","ϦϫÎ÷ÎüÏ£ÎôÎöÎùÏ¢ÎþÏ¤Ï§Ï©ÎøÎúϬϡϪÎýϨÎõÎûϥϰϯϮϱÏϴϲϷϵϸ϶"); InsertCode("xia","ϺϹϻÏÀÏ¿ÏÁϾϽϼÏÂÏÅÏÄ"); InsertCode("xian","ϳÏÉÏÈÏËÏÆÏÇÏÊÏÐÏÒÏÍÏÌÏÑÏÏÏÎÏÓÏÔÏÕÏØÏÖÏßÏÞÏÜÏÝÏÚÏÛÏ×ÏÙ"); InsertCode("xiang","ÏçÏàÏãÏáÏæÏäÏåÏâÏêÏéÏèÏíÏìÏëÏòÏïÏîÏóÏñÏð"); InsertCode("xiao","ÏüÏûÏôÏõÏúÏöÏùÏýСÏþÐ¢Ð¤ÏøÐ§Ð£Ð¦Ð¥"); InsertCode("xie","ЩШЪЫÐавбгЯЬдйкжмелиз"); InsertCode("xin","ÐÄÐÃоÐÁÐÀпÐÂнÐÅÐÆ"); InsertCode("xing","ÐËÐÇÐÊÐÉÐÈÐÌÐÏÐÎÐÍÐÑÐÓÐÕÐÒÐÔ"); InsertCode("xiong","Ð×ÐÖÐÙÐÚÐØÐÛÐÜ"); InsertCode("xiu","ËÞÐÝÐÞÐßÐàÐãÐåÐäÐâÐá"); InsertCode("xu","ÐçÐëÐéÐêÐèÐæÐìÐíÐñÐòÐðÐôÐ÷ÐøÐïÐöÐõÐîÓõ"); InsertCode("xua","ÐùÐûÐúÐþÐüÐýѡѢѤѣ"); InsertCode("xue","Ï÷ѥѦѨѧѩѪ"); InsertCode("xun","ѫѬѰѲѮѱѯÑѵѶѴѸѷѳ"); InsertCode("ya","ѾѹѽѺѻѼÑÀÑ¿ÑÁÑÂÑÄÑÃÑÆÑÅÑÇÑÈ"); InsertCode("yan","ÑÊÑÌÑÍÑÉÑËÑÓÑÏÑÔÑÒÑØÑ×ÑÐÑÎÑÖÑÑÑÕÑÙÑÜÑÚÑÛÑÝÑáÑåÑâÑäÑçÑÞÑéÑèÑßÑæÑãÑà"); InsertCode("yang","ÑëÑêÑíÑìÑïÑòÑôÑîÑðÑñÑóÑöÑøÑõÑ÷ÑùÑú"); InsertCode("yao","½ÄÑýÑüÑûÒ¢Ò¦Ò¤Ò¥Ò¡Ò£ÑþÒ§Ò¨Ò©ÒªÒ«Ô¿"); InsertCode("ye","Ò¬ÒÒ¯Ò®Ò²Ò±Ò°ÒµÒ¶Ò·Ò³Ò¹Ò´ÒºÒ¸"); InsertCode("yi","Ò»ÒÁÒÂÒ½ÒÀÒ¿Ò¼Ò¾ÒÇÒÄÒÊÒËÒÌÒÈÒÆÒÅÒÃÒÉÒÍÒÒÒÑÒÔÒÓÒÏÒÐÒÎÒåÒÚÒäÒÕÒéÒàÒÙÒìÒÛÒÖÒëÒØÒ×ÒïÒèÒßÒæÒêÒîÒÝÒâÒçÒÞÒáÒãÒíÒÜ"); InsertCode("yin","ÒòÒõÒöÒðÒñÒôÒóÒ÷ÒúÒùÒøÒüÒýÒûÒþÓ¡"); InsertCode("ying","Ó¦Ó¢Ó¤Ó§Ó£Ó¥ÓÓ¯Ó«Ó¨Ó©ÓªÓ¬Ó®Ó±Ó°Ó³Ó²"); InsertCode("yo","Ó´"); InsertCode("yong","Ó¶ÓµÓ¸Ó¹ÓºÓ·ÓÀÓ½Ó¾ÓÂÓ¿ÓÁÓ¼Ó»ÓÃ"); InsertCode("you","ÓÅÓÇÓÄÓÆÓÈÓÉÓÌÓÊÓÍÓËÓÎÓÑÓÐÓÏÓÖÓÒÓ×ÓÓÓÕÓÔ"); InsertCode("yu","ÓØÓÙÓåÓÚÓèÓàÓÛÓãÓáÓéÓæÓçÓäÓâÓÞÓÜÓÝÓßÓëÓîÓìÓðÓêÓíÓïÓñÔ¦ÓóÓýÓôÓüÓøÔ¡Ô¤ÓòÓûÓ÷Ô¢ÓùÔ£ÓöÓúÓþÔ¥"); InsertCode("yuan","Ô©Ô§Ô¨ÔªÔ±Ô°Ô«ÔÔ²Ô¬Ô®ÔµÔ´Ô³Ô¯Ô¶Ô·Ô¹ÔºÔ¸"); InsertCode("yue","Ô»Ô¼ÔÂÔÀÔÃÔÄÔ¾ÔÁÔ½"); InsertCode("yun","ÔÆÔÈÔÇÔÅÔÊÔÉÔÐÔËÔÎÔÍÔÏÔÌ"); InsertCode("za","ÔÑÔÓÔÒÕ¦"); InsertCode("zai","ÔÖÔÕÔÔÔ×ÔØÔÙÔÚ×Ð"); InsertCode("zan","ÔÛÔÜÔÝÔÞ"); InsertCode("zang","ÔßÔàÔá"); InsertCode("zao","ÔâÔãÔäÔçÔæÔéÔèÔåÔîÔíÔìÔëÔïÔê"); InsertCode("ze","ÔòÔñÔóÔð"); InsertCode("zei","Ôô"); InsertCode("zen","Ôõ"); InsertCode("zeng","ÔöÔ÷Ôù"); InsertCode("zha","ÔûÔüÔúÔýÔþÕ¢Õ¡Õ£Õ§Õ©Õ¨Õ¥×õ"); InsertCode("zhai","Õ«ÕªÕ¬µÔÕÕ®Õ¯"); InsertCode("zhan","Õ´Õ±Õ³Õ²Õ°Õ¶Õ¹ÕµÕ¸Õ·Õ¼Õ½Õ»Õ¾ÕÀÕ¿Õº"); InsertCode("zhang","³¤ÕÅÕÂÕÃÕÄÕÁÕÇÕÆÕÉÕÌÕÊÕÈÕÍÕËÕÏÕÎ"); InsertCode("zhao","ÕÐÕÑÕÒÕÓÕÙÕ×ÕÔÕÕÕÖըצ"); InsertCode("zhe","ÕÚÕÛÕÜÕÝÕÞÕßÕàÕâÕãÕá×Å"); InsertCode("zhen","ÕêÕëÕìÕäÕæÕèÕåÕçÕéÕïÕíÕîÕóÕñÕòÕðÖ¡"); InsertCode("zheng","ÕùÕ÷ÕúÕõÕøÕöÕôÕüÕûÕýÖ¤Ö£ÕþÖ¢"); InsertCode("zhi","Ö®Ö§ÖÖ¥Ö¨Ö¦ÖªÖ¯Ö«Ö¬Ö©Ö´Ö¶Ö±ÖµÖ°Ö²Ö³Ö¹Ö»Ö¼Ö·Ö½Ö¸ÖºÖÁÖ¾ÖÆÖÄÖÎÖËÖÊÖÅÖ¿ÖÈÖÂÖÀÖÌÖÏÖÇÖÍÖÉÖÃ"); InsertCode("zhong","ÖÐÖÒÖÕÖÑÖÓÖÔÖ×ÖÖÖÙÖÚÖØ"); InsertCode("zhou","ÖÝÖÛÖßÖÜÖÞÖàÖáÖâÖãÖäÖæÖçÖåÖè"); InsertCode("zhu","ÖìÖïÖêÖéÖîÖíÖëÖñÖòÖðÖ÷ÖôÖóÖöÖõסÖú×¢ÖüפÖù×£ÖøÖûÖþÖý"); InsertCode("zhua","×¥"); InsertCode("zhuai","×§"); InsertCode("zhuan","רשת׫×"); InsertCode("zhuang","ױׯ׮װ׳״´±×²"); InsertCode("zhui","׷׵׶׹׺׸"); InsertCode("zhun","×»×¼"); InsertCode("zhuo","׿׾׽×Àׯ×Â×Ç×Ã×Ä×Á"); InsertCode("zi","×Î×È×É×Ë×Ê×Í×Ì×Ñ×Ó×Ï×Ò×Ö×Ô×Õ"); InsertCode("zong","×Ú×Ûר×Ù×××Ü×Ý"); InsertCode("zou","×Þ×ß×à×á"); InsertCode("zu","×â×ã×ä×å×ç×è×é׿"); InsertCode("zuan","׬×ë×ê"); InsertCode("zui","×ì×î×ï×í"); InsertCode("zun","×ð×ñ"); InsertCode("zuo","×ò×ó×ô×÷×ø×ù×ö"); return ; } int main(int argc,char *argv[]) { uchar out[1024]; int count = 0; char input[50]; Init_Font_Code(); while(1) { printf("ÊäÈëÆ´Òô : "); scanf("\n%s",input); if(strncmp(input,"exit",4) == 0) break; count = SearchCode(input,out); out[count] = 0; printf("%s = %s\n",input,out); } FreeFontCach(&hrlist); return 0; }