Exemplo n.º 1
0
        public ShuangpinReplacer(PinyinType type)
        {
            string pinyinMapping = DictionaryHelper.GetResourceContent("Shuangpin.txt");

            foreach (var line in pinyinMapping.Split(new[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries))
            {
                var arr       = line.Split('\t');
                var pinyin    = arr[0];
                var shuangpin = arr[(int)type];
                mapping[pinyin] = shuangpin;
            }
        }
Exemplo n.º 2
0
        internal static string GetPinyinTypeName(PinyinType t)
        {
            switch (t)
            {
            default: return("");

            case PinyinType.BIG52RomaPinyin: return("BIG5 to Roma Pinyin");

            case PinyinType.GBK2RomaPinyin: return("GB(TC) to Roma Pinyin");

            case PinyinType.GB2Pinyin: return("GB(SC) to Pinyin");
            }
        }
Exemplo n.º 3
0
        public static IPinyin GetInstance(PinyinType type)
        {
            switch (type)
            {
            default: return(EmptyPinyin.Instance);

            case PinyinType.GB2Pinyin: return(GB2Pinyin.Instance);

            case PinyinType.GBK2RomaPinyin: return(GBK2RomaPinyin.Instance);

            case PinyinType.BIG52RomaPinyin: return(BIG52RomaPinyin.Instance);
            }
        }
        private void BtnOK_Click(object sender, EventArgs e)
        {
            switch (cbxPinyinType.Text)
            {
            case "全拼": pinyinType = PinyinType.FullPinyin;
                codeType          = CodeType.Pinyin;
                break;

            case "小鹤双拼": pinyinType = PinyinType.XiaoheShuangpin; codeType = CodeType.Pinyin; break;

            default: pinyinType = PinyinType.FullPinyin; codeType = CodeType.UserDefinePhrase; break;
            }
            this.DialogResult = DialogResult.OK;
        }
Exemplo n.º 5
0
        private void BtnOK_Click(object sender, EventArgs e)
        {
            codeType = CodeType.Pinyin;
            switch (cbxPinyinType.Text)
            {
            case "全拼": pinyinType = PinyinType.FullPinyin;
                break;

            case "微软双拼":
                pinyinType = PinyinType.MsShuangpin;
                break;

            case "小鹤双拼":
                pinyinType = PinyinType.XiaoheShuangpin;
                break;

            case "智能ABC":
                pinyinType = PinyinType.SmartABCShuangpin;
                break;

            case "自然码":
                pinyinType = PinyinType.NatureCode;
                break;

            case "拼音加加":
                pinyinType = PinyinType.PinyinJiajia;
                break;

            case "星空键道":
                pinyinType = PinyinType.XingkongJiandao;
                break;

            case "大牛双拼":
                pinyinType = PinyinType.DaniuShuangpin;
                break;

            case "小浪双拼":
                pinyinType = PinyinType.XiaolangShuangpin;
                break;

            case "紫光拼音":
                pinyinType = PinyinType.ZiguangShuangpin;
                break;

            default: pinyinType = PinyinType.FullPinyin; codeType = CodeType.UserDefinePhrase; break;
            }
            this.DialogResult = DialogResult.OK;
        }
Exemplo n.º 6
0
        /// <summary>
        /// 根据不同拼音类型的拼音字符串
        /// </summary>
        /// <param name="input">指定的汉字字符串</param>
        /// <param name="pinyinType">拼音类型</param>
        /// <param name="spaceChar">分割字符串</param>
        /// <returns></returns>
        public static string GetPinyinStringByPinyinType(string input, PinyinType pinyinType, string spaceChar)
        {
            if (string.IsNullOrEmpty(input))
            {
                return(null);
            }

            switch (pinyinType)
            {
            case PinyinType.Hanyu:
                return
                    (GetPinyinString(input, spaceChar,
                                     PinyinHelper.ToHanyuPinyinStringArray));

            case PinyinType.Wade:
                return
                    (GetPinyinString(input, spaceChar,
                                     PinyinHelper.ToWadeGilesPinyinStringArray));

            case PinyinType.MPSII:
                return
                    (GetPinyinString(input, spaceChar,
                                     PinyinHelper.ToMPS2PinyinStringArray));

            case PinyinType.Yale:
                return
                    (GetPinyinString(input, spaceChar,
                                     PinyinHelper.ToYalePinyinStringArray));

            case PinyinType.Tongyong:
                return
                    (GetPinyinString(input, spaceChar,
                                     PinyinHelper.ToTongyongPinyinStringArray));

            case PinyinType.Gwoyeu:
                return
                    (GetPinyinString(input, spaceChar,
                                     PinyinHelper.ToGwoyeuRomatzyhStringArray));

            default:
                return
                    (GetPinyinString(input, spaceChar,
                                     PinyinHelper.ToHanyuPinyinStringArray));
            }
        }
Exemplo n.º 7
0
        internal static string GetPinyinTypeName(PinyinType t, bool forCombox)
        {
            switch (t)
            {
            default:
            {
                if (forCombox)
                {
                    return("None");
                }
                else
                {
                    return("");
                }
            }

            case PinyinType.BIG52RomaPinyin: return("BIG5 to Roma Pinyin");

            case PinyinType.GBK2RomaPinyin: return("GBK to Roma Pinyin");

            case PinyinType.GB2Pinyin: return("GB to Pinyin");
            }
        }
Exemplo n.º 8
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="valueMember"></param>
 /// <param name="displayMember"></param>
 public PinyinItem(PinyinType valueMember, string displayMember)
 {
     _valueMember   = valueMember;
     _displayMember = displayMember;
 }