public LangPair GetLangPair(string inputLang, string outputLang) { LangPair lp = new LangPair(); #region InputLang switch (inputLang) { case "English": lp.InputLang = Lang.En; break; case "Russian": lp.InputLang = Lang.Ru; break; } #endregion #region OutputLang switch (outputLang) { case "English": lp.OutputLang = Lang.En; break; case "Russian": lp.OutputLang = Lang.Ru; break; } #endregion return(lp); }
public void button1_Click(object sender, EventArgs e) { LangPair LP = new LangPair(Lang.En, Lang.Ru); textBox2.Text = ""; textBox2.Text = Trans.Translate(textBox1.Text, LP).Text; }
private IAsset CreateAsset(string package, LangPair lang_pair, ICollection <TuEntry> all_tus) { var slang = lang_pair.Source; var tlang = lang_pair.Target; var propman = new PropertiesManager(false); var pairs = new List <ITransPair>(all_tus.Count); foreach (var tu in all_tus) { var pair = tu.GetTransPair(slang, tlang, propman); if (pair != null) { pairs.Add(pair); } } if (pairs.Count == 0) { return(null); } return(new TmxAsset { Package = package, Original = string.Format("{0} - {1}", slang, tlang), SourceLang = slang, TargetLang = tlang, TransPairs = pairs.ToArray(), Properties = propman.Properties, }); }
public TranslateClass(Lang inLang, Lang outLang, string key) { tr = new Translator(key); lp = new LangPair { InputLang = inLang, OutputLang = outLang }; }
private static bool ProviderSupportsPair(dynamic provider, LangPair pair) { foreach (dynamic p in provider.pairs) { if (p.from == pair.from && p.to == pair.to) { return(true); } } List <string> symmetric = ((JArray)provider.symmetric).Select(x => (string)x).ToList(); return(symmetric.Any(x => x == pair.from) && symmetric.Any(x => x == pair.to)); }
private static bool RoutingSupportsPair(dynamic routing, LangPair pair) { foreach (dynamic p in routing.pairs) { if (p.from == "" || p.from == pair.from) { if (p.to == "" || p.to == pair.to) { return(true); } } } return(false); }
public static string Translator(string wordTranslate, string inputLang, string outputLang) { string trKey = File.ReadAllText("APIKey.txt", Encoding.Default); LangPair langPair = new LangPair(); if (inputLang.Equals("Default")) { langPair.InputLang = langDetect(wordTranslate, trKey); } else { langPair.InputLang = selector(inputLang); } langPair.OutputLang = selector(outputLang); return((new YandexLinguistics.NET.Translator(trKey)).Translate(wordTranslate, langPair).Text); }
public LangPair GetLangPair(string langFrom, string langTo) { LangPair pair = new LangPair(); switch (langFrom) { case "Русский": pair.InputLang = Lang.Ru; break; case "Английский": pair.InputLang = Lang.En; break; } switch (langTo) { case "Русский": pair.OutputLang = Lang.Ru; break; case "Английский": pair.OutputLang = Lang.En; break; } return(pair); }
public LangPair GetLangPair(string inputLang, string outputLang) { LangPair lp = new LangPair(); for (int i = 0; i < LangIsMas.Length / 2; i++) { if (inputLang.ToLower() == LangIsMas[i]) { lp.InputLang = (Lang)i; } if (outputLang.ToLower() == LangIsMas[i]) { lp.OutputLang = (Lang)i; } } return(lp); }
public LangPair GetLangPair(string inputLang, string outputLang) { LangPair lp = new LangPair(); switch (inputLang) { case "en": lp.InputLang = Lang.En; break; case "ru": lp.InputLang = Lang.Ru; break; } switch (outputLang) { case "en": lp.OutputLang = Lang.En; break; case "ru": lp.OutputLang = Lang.Ru; break; } return(lp); }
public LangPair GetLangPair(string inputLang, string outputLang) { LangPair lp = new LangPair(); switch (inputLang) { case "Украинский": lp.InputLang = Lang.Uk; break; case "Английский": lp.InputLang = Lang.En; break; default: break; } switch (outputLang) { case "Украинский": lp.OutputLang = Lang.Uk; break; case "Английский": lp.OutputLang = Lang.En; break; default: break; } return(lp); }
public string Translate(string text, LangPair pair) { return(translator.Translate(text, pair).Text); }
public string Translator(string wordToTranslate, LangPair langPair) { return(translator.Translate(wordToTranslate, langPair).Text); }
public string BTranslator(string wordToTranslate, LangPair langPair) { Tr = new YandexLinguistics.NET.Translator(KeyApi); return(Tr.Translate(wordToTranslate, langPair).Text); }
/// <summary>Reads a TMX document from an XmlReader to return a series of assets.</summary> /// <param name="reader">An XmlReader object.</param> /// <param name="package">The name of package the XmlReader reads data from.</param> /// <returns>A series of assets.</returns> private IEnumerable <IAsset> ReadAssets(XmlReader reader, string package) { XElement header; IEnumerable <XElement> tus; if (!ParseEnumerateTmx(reader, out header, out tus)) { return(null); } var X = header.Name.Namespace; var locker = new object(); var all_tus = new TuEntryList(); AltParallel.ForEach(tus, // Local Init () => new TuEntryList(), // Body (tu, state_UNUSED, index_long, local_tus) => { var index = (int)index_long; local_tus.Add(new TuEntry(tu, index)); return(local_tus); }, // Local Finally (local_tus) => { lock (locker) { all_tus.AddRange(local_tus); } } ); all_tus.Sort(); var header_source_language = LangCode.NoAll((string)header.Attribute("srclang")); if (header_source_language != null) { all_tus.SourceLanguages.Add(header_source_language); } var slangs = all_tus.SourceLanguages; var tlangs = all_tus.TargetLanguages; if (slangs.Count == 0) { slangs = tlangs; } var assets = new List <IAsset>(slangs.Count * tlangs.Count); AltParallel.ForEach(LangPair.Enumerate(slangs, tlangs), (lang_pair) => { var asset = CreateAsset(package, lang_pair, all_tus.Tus); if (asset != null) { lock (locker) { assets.Add(asset); } } } ); // Sort the assets with language codes so that the result is predicatble. assets.Sort((x, y) => { var s = string.Compare(x.SourceLang, y.SourceLang, StringComparison.OrdinalIgnoreCase); if (s != 0) { return(s); } var t = string.Compare(x.TargetLang, y.TargetLang, StringComparison.OrdinalIgnoreCase); return(t); }); return(assets); }
} // DMTransletor /// <summary> /// Выбор языка /// </summary> /// <param name="inputLang"></param> /// <param name="outputLang"></param> /// <returns></returns> public LangPair GetPair(string inputLang, string outputLang) { LangPair lp = new LangPair(); #region InputLang switch (inputLang) { case "английский": lp.InputLang = Lang.En; break; case "белорусский": lp.InputLang = Lang.Be; break; case "русский": lp.InputLang = Lang.Ru; break; case "украинский": lp.InputLang = Lang.Uk; break; case "французский": lp.InputLang = Lang.Fr; break; } #endregion #region OutputLang switch (outputLang) { case "английский": lp.OutputLang = Lang.En; break; case "белорусский": lp.OutputLang = Lang.Be; break; case "русский": lp.OutputLang = Lang.Ru; break; case "украинский": lp.OutputLang = Lang.Uk; break; case "французский": lp.OutputLang = Lang.Fr; break; } #endregion return(lp); } //
} // /// <summary> /// Выполнение перевода /// </summary> /// <param name="wordTotranslete">Текст для перевода</param> /// <param name="lang">Определенный язык</param> /// <returns></returns> public string Translator(string wordTotranslete, LangPair lang) { // Вернуть текст return(tr.Translate(wordTotranslete, lang).Text); } // translator
private void TranslateButton_Click(object sender, EventArgs e) { toRichTextBox.Clear(); using (SQLiteConnection connection = new SQLiteConnection("DataSource=saved_translations.db")) { connection.Open(); LangPair langPair = new LangPair(translator.DetectLang(fromRichTextBox.Text), GetLang(toLangComboBox.SelectedItem.ToString())); SQLiteCommand sqlCommand = new SQLiteCommand("SELECT EXISTS (SELECT * FROM translation_cache WHERE from_str = @from_str and lang_pair = @lang_pair)", connection); SQLiteParameter fromStrParam = new SQLiteParameter("@from_str", fromRichTextBox.Text); sqlCommand.Parameters.Add(fromStrParam); SQLiteParameter langPairParam = new SQLiteParameter("@lang_pair", langPair.ToString()); sqlCommand.Parameters.Add(langPairParam); try { string isTranslationExists = sqlCommand.ExecuteScalar().ToString(); if (isTranslationExists == "0") { Translation translation; switch (fromLangComboBox.SelectedItem.ToString()) { case "Автоопределение": translation = translator.Translate(fromRichTextBox.Text, langPair); break; default: translation = translator.Translate(fromRichTextBox.Text, langPair); break; } DicResult dicResult = dictionary.Lookup(langPair, fromRichTextBox.Text); FillToRichTextBox(translation.Text, dicResult); sqlCommand.CommandText = "INSERT INTO translation_cache (from_str, to_str, lang_pair, dic_result)" + "VALUES (@from_str, @to_str, @lang_pair, @dic_result)"; SQLiteParameter toStrParam = new SQLiteParameter("@to_str", translation.Text); sqlCommand.Parameters.Add(toStrParam); SQLiteParameter dicResultParam = new SQLiteParameter("@dic_result", JsonConvert.SerializeObject(dicResult)); sqlCommand.Parameters.Add(dicResultParam); sqlCommand.ExecuteNonQuery(); } else { sqlCommand.CommandText = "SELECT to_str FROM translation_cache WHERE from_str = @from_str and lang_pair = @lang_pair"; string strTranslaton = sqlCommand.ExecuteScalar().ToString(); sqlCommand.CommandText = "SELECT dic_result FROM translation_cache WHERE from_str = @from_str and lang_pair = @lang_pair"; DicResult dicResult = JsonConvert.DeserializeObject <DicResult>(sqlCommand.ExecuteScalar().ToString()); FillToRichTextBox(strTranslaton, dicResult); } } catch (Exception ex) { MessageBox.Show(ex.Message, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }
public frmMain() { Predictor = new Predictor(Settings.Default.PredictorKey); Dictionary = new Dictionary(Settings.Default.DictionaryKey); Translator = new Translator(Settings.Default.TranslatorKey); Speller = new Speller(); PredictorTimer = new System.Threading.Timer(_ => UpdatePredictorResult(), null, Timeout.Infinite, Timeout.Infinite); DictionaryTimer = new System.Threading.Timer(_ => UpdateDictionaryResult(), null, Timeout.Infinite, Timeout.Infinite); TranslatorTimer = new System.Threading.Timer(_ => UpdateTranslatorResult(), null, Timeout.Infinite, Timeout.Infinite); SpellerTimer = new System.Threading.Timer(_ => UpdateSpellerResult(), null, Timeout.Infinite, Timeout.Infinite); InitializeComponent(); tcServices.SelectedIndex = Settings.Default.SelectedTabIndex; cmbPredictorLangs.Items.AddRange(Predictor.GetLangs().Select(lang => (object)lang).ToArray()); cmbDictionaryLangPairs.Items.AddRange(Dictionary.GetLangs().Select(lang => (object)lang).ToArray()); cmbDictionaryLangUi.Items.Add(""); cmbDictionaryLangUi.Items.AddRange(Predictor.GetLangs().Select(lang => (object)lang).ToArray()); cmbPredictorLangs.SelectedItem = Enum.Parse(typeof(Lang), Settings.Default.PredictorLanguage); nudMaxHintCount.Value = Settings.Default.PredictorMaxHintCount; nudPredictorDelay.Value = Settings.Default.PredictorHintDelay; tbPredictorInput.Text = Settings.Default.PredictorInput; cmbDictionaryLangPairs.SelectedItem = LangPair.Parse(Settings.Default.DictionaryLangPair); cmbDictionaryLangUi.SelectedIndex = 0; cbFamily.Checked = Settings.Default.DictionaryFamily; cbMorpho.Checked = Settings.Default.DictionaryMorpho; cbPartOfSpeech.Checked = Settings.Default.DictionaryPartOfSpeech; nudPredictorDelay.Value = Settings.Default.DictionaryHintDelay; tbDictionaryInput.Text = Settings.Default.DictionaryInput; cbDictionaryFormatting.Checked = Settings.Default.DictionaryFormatting; rbDictionaryOutput.Text = Settings.Default.DictionaryOutputIndent; var langArray = ((Lang[])Enum.GetValues(typeof(Lang))).Select(lang => (object)lang).ToArray(); cmbTranslatorInputLang.Items.AddRange(langArray); cmbTranslatorOutputLang.Items.AddRange(langArray); cmbTranslatorInputLang.SelectedItem = (Lang)Enum.Parse(typeof(Lang), Settings.Default.TranslatorInputLang); cmbTranslatorOutputLang.SelectedItem = (Lang)Enum.Parse(typeof(Lang), Settings.Default.TranslatorOutputLang); nudTranslatorDelay.Value = Settings.Default.TranslatorHintDelay; cbTranslatorDetectInputLang.Checked = Settings.Default.TranslatorDetectInputLang; tbTranslatorInput.Text = Settings.Default.TranslatorInput; cbSpellerRu.Checked = Settings.Default.SpellerRuLang; cbSpellerEn.Checked = Settings.Default.SpellerEnLang; cbSpellerUk.Checked = Settings.Default.SpellerUkLang; SpellerOptions options = (SpellerOptions)Settings.Default.SpellerOptions; cbIgnoreUppercase.Checked = options.HasFlag(SpellerOptions.IgnoreUppercase); cbIgnoreDigits.Checked = options.HasFlag(SpellerOptions.IgnoreDigits); cbIgnoreUrls.Checked = options.HasFlag(SpellerOptions.IgnoreUrls); cbFindRepeatWords.Checked = options.HasFlag(SpellerOptions.FindRepeatWords); cbIgnoreLatin.Checked = options.HasFlag(SpellerOptions.IgnoreLatin); cbNoSuggest.Checked = options.HasFlag(SpellerOptions.NoSuggest); cbFlagLatin.Checked = options.HasFlag(SpellerOptions.FlagLatin); cbByWords.Checked = options.HasFlag(SpellerOptions.ByWords); cbIgnoreCapitalization.Checked = options.HasFlag(SpellerOptions.IgnoreCapitalization); nudSpellerDelay.Value = Settings.Default.SpellerHintDelay; tbSpellerInput.Text = Settings.Default.SpellerInput; cbIncludeErrorWords.Checked = Settings.Default.SpellerIncludeErrorWords; tbPredictorKey.Text = Settings.Default.PredictorKey; tbDictionaryKey.Text = Settings.Default.DictionaryKey; tbTranslatorKey.Text = Settings.Default.TranslatorKey; tbPredictorBaseUrl.Text = Settings.Default.PredictorBaseUrl; tbDictionaryBaseUrl.Text = Settings.Default.DictionaryBaseUrl; tbTranslatorBaseUrl.Text = Settings.Default.TranslatorBaseUrl; tbSpellerBaseUrl.Text = Settings.Default.SpellerBaseUrl; }
public void TranslatorGetLangs() { var langPairs = Translator.GetLangs(); var expectedLangPairs = new LangPair[] { LangPair.AzRu, LangPair.BeBg, LangPair.BeCs, LangPair.BeDe, LangPair.BeEn, LangPair.BeEs, LangPair.BeFr, LangPair.BeIt, LangPair.BePl, LangPair.BeRo, LangPair.BeRu, LangPair.BeSr, LangPair.BeTr, LangPair.BgBe, LangPair.BgRu, LangPair.BgUk, LangPair.CaEn, LangPair.CaRu, LangPair.CsBe, LangPair.CsEn, LangPair.CsRu, LangPair.CsUk, LangPair.DaEn, LangPair.DaRu, LangPair.DeBe, LangPair.DeEn, LangPair.DeEs, LangPair.DeFr, LangPair.DeIt, LangPair.DeRu, LangPair.DeTr, LangPair.DeUk, LangPair.ElEn, LangPair.ElRu, LangPair.EnBe, LangPair.EnCa, LangPair.EnCs, LangPair.EnDa, LangPair.EnDe, LangPair.EnEl, LangPair.EnEs, LangPair.EnEt, LangPair.EnFi, LangPair.EnFr, LangPair.EnHu, LangPair.EnIt, LangPair.EnLt, LangPair.EnLv, LangPair.EnMk, LangPair.EnNl, LangPair.EnNo, LangPair.EnPt, LangPair.EnRu, LangPair.EnSk, LangPair.EnSl, LangPair.EnSq, LangPair.EnSv, LangPair.EnTr, LangPair.EnUk, LangPair.EsBe, LangPair.EsDe, LangPair.EsEn, LangPair.EsRu, LangPair.EsUk, LangPair.EtEn, LangPair.EtRu, LangPair.FiEn, LangPair.FiRu, LangPair.FrBe, LangPair.FrDe, LangPair.FrEn, LangPair.FrRu, LangPair.FrUk, LangPair.HrRu, LangPair.HuEn, LangPair.HuRu, LangPair.HyRu, LangPair.ItBe, LangPair.ItDe, LangPair.ItEn, LangPair.ItRu, LangPair.ItUk, LangPair.LtEn, LangPair.LtRu, LangPair.LvEn, LangPair.LvRu, LangPair.MkEn, LangPair.MkRu, LangPair.NlEn, LangPair.NlRu, LangPair.NoEn, LangPair.NoRu, LangPair.PlBe, LangPair.PlRu, LangPair.PlUk, LangPair.PtEn, LangPair.PtRu, LangPair.RoBe, LangPair.RoRu, LangPair.RoUk, LangPair.RuAz, LangPair.RuBe, LangPair.RuBg, LangPair.RuCa, LangPair.RuCs, LangPair.RuDa, LangPair.RuDe, LangPair.RuEl, LangPair.RuEn, LangPair.RuEs, LangPair.RuEt, LangPair.RuFi, LangPair.RuFr, LangPair.RuHr, LangPair.RuHu, LangPair.RuHy, LangPair.RuIt, LangPair.RuLt, LangPair.RuLv, LangPair.RuMk, LangPair.RuNl, LangPair.RuNo, LangPair.RuPl, LangPair.RuPt, LangPair.RuRo, LangPair.RuSk, LangPair.RuSl, LangPair.RuSq, LangPair.RuSr, LangPair.RuSv, LangPair.RuTr, LangPair.RuUk, LangPair.SkEn, LangPair.SkRu, LangPair.SlEn, LangPair.SlRu, LangPair.SqEn, LangPair.SqRu, LangPair.SrBe, LangPair.SrRu, LangPair.SrUk, LangPair.SvEn, LangPair.SvRu, LangPair.TrBe, LangPair.TrDe, LangPair.TrEn, LangPair.TrRu, LangPair.TrUk, LangPair.UkBg, LangPair.UkCs, LangPair.UkDe, LangPair.UkEn, LangPair.UkEs, LangPair.UkFr, LangPair.UkIt, LangPair.UkPl, LangPair.UkRo, LangPair.UkRu, LangPair.UkSr, LangPair.UkTr, }; Assert.IsTrue(expectedLangPairs.All(lang => langPairs.Contains(lang))); }
public LangPair getLangPair(string inputLang, string outputLang) { LangPair lp = new LangPair(); #region InputLang switch (inputLang) { case "Азербайджанский": lp.InputLang = Lang.Az; break; case "Албанский": lp.InputLang = Lang.Sq; break; case "Английский": lp.InputLang = Lang.En; break; case "Арабский": break; case "Армянский": lp.InputLang = Lang.Hy; break; case "Африкаанс": break; case "Баскский": break; case "Башкирский": break; case "Белорусский": lp.InputLang = Lang.Be; break; case "Бенгальский": break; case "Болгарский": lp.InputLang = Lang.Bg; break; case "Боснийский": break; case "Валлийский": break; case "Венгерский": lp.InputLang = Lang.Hu; break; case "Вьетнамский": break; case "Гаитянский": break; case "Галисийский": break; case "Голландский": break; case "Греческий": lp.InputLang = Lang.El; break; case "Грузинский": break; case "Гуджарати": break; case "Датский": lp.InputLang = Lang.Da; break; case "Иврит": break; case "Индонезийский": break; case "Ирландский": break; case "Исландский": break; case "Испанский": lp.InputLang = Lang.Es; break; case "Итальянский": lp.InputLang = Lang.It; break; case "Казахский": break; case "Каннада": break; case "Каталанский": lp.InputLang = Lang.Ca; break; case "Киргизский": break; case "Китайский": break; case "Корейский": break; case "Латынь": break; case "Латышский": lp.InputLang = Lang.Lv; break; case "Литовский": lp.InputLang = Lang.Lt; break; case "Македонский": lp.InputLang = Lang.Mk; break; case "Малагасийский": break; case "Малайский": break; case "Мальтийский": break; case "Монгольский": break; case "Немецкий": lp.InputLang = Lang.De; break; case "Норвежский": lp.InputLang = Lang.No; break; case "Панджаби": break; case "Персидский": break; case "Польский": lp.InputLang = Lang.Pl; break; case "Португальский": lp.InputLang = Lang.Pt; break; case "Румынский": lp.InputLang = Lang.Ro; break; case "Русский": lp.InputLang = Lang.Ru; break; case "Сербский": lp.InputLang = Lang.Sr; break; case "Сингальский": break; case "Словацкий": lp.InputLang = Lang.Sk; break; case "Словенский": lp.InputLang = Lang.Sl; break; case "Суахили": break; case "Тагальский": break; case "Таджикский": break; case "Тайский": break; case "Тамильский": break; case "Татарский": break; case "Турецкий": lp.InputLang = Lang.Tr; break; case "Удмуртский": break; case "Узбекский": break; case "Украинский": lp.InputLang = Lang.Uk; break; case "Урду": break; case "Финский": lp.InputLang = Lang.Fi; break; case "Французский": lp.InputLang = Lang.Fr; break; case "Хорватский": lp.InputLang = Lang.Hr; break; case "Хинди": break; case "Чешский": lp.InputLang = Lang.Cs; break; case "Шведский": lp.InputLang = Lang.Sv; break; case "Эльфийский (cиндарин)": break; case "Эстонский": lp.InputLang = Lang.Et; break; case "Японский": break; } #endregion #region OutputLang switch (outputLang) { case "Азербайджанский": lp.OutputLang = Lang.Az; break; case "Албанский": lp.OutputLang = Lang.Sq; break; case "Английский": lp.OutputLang = Lang.En; break; case "Арабский": break; case "Армянский": lp.OutputLang = Lang.Hy; break; case "Африкаанс": break; case "Баскский": break; case "Башкирский": break; case "Белорусский": lp.OutputLang = Lang.Be; break; case "Бенгальский": break; case "Болгарский": lp.OutputLang = Lang.Bg; break; case "Боснийский": break; case "Валлийский": break; case "Венгерский": lp.OutputLang = Lang.Hu; break; case "Вьетнамский": break; case "Гаитянский": break; case "Галисийский": break; case "Голландский": break; case "Греческий": lp.OutputLang = Lang.El; break; case "Грузинский": break; case "Гуджарати": break; case "Датский": lp.OutputLang = Lang.Da; break; case "Иврит": break; case "Индонезийский": break; case "Ирландский": break; case "Исландский": break; case "Испанский": lp.OutputLang = Lang.Es; break; case "Итальянский": lp.OutputLang = Lang.It; break; case "Казахский": break; case "Каннада": break; case "Каталанский": lp.OutputLang = Lang.Ca; break; case "Киргизский": break; case "Китайский": break; case "Корейский": break; case "Латынь": break; case "Латышский": lp.OutputLang = Lang.Lv; break; case "Литовский": lp.OutputLang = Lang.Lt; break; case "Македонский": lp.OutputLang = Lang.Mk; break; case "Малагасийский": break; case "Малайский": break; case "Мальтийский": break; case "Монгольский": break; case "Немецкий": lp.OutputLang = Lang.De; break; case "Норвежский": lp.OutputLang = Lang.No; break; case "Панджаби": break; case "Персидский": break; case "Польский": lp.OutputLang = Lang.Pl; break; case "Португальский": lp.OutputLang = Lang.Pt; break; case "Румынский": lp.OutputLang = Lang.Ro; break; case "Русский": lp.OutputLang = Lang.Ru; break; case "Сербский": lp.OutputLang = Lang.Sr; break; case "Сингальский": break; case "Словацкий": lp.OutputLang = Lang.Sk; break; case "Словенский": lp.OutputLang = Lang.Sl; break; case "Суахили": break; case "Тагальский": break; case "Таджикский": break; case "Тайский": break; case "Тамильский": break; case "Татарский": break; case "Турецкий": lp.OutputLang = Lang.Tr; break; case "Удмуртский": break; case "Узбекский": break; case "Украинский": lp.OutputLang = Lang.Uk; break; case "Урду": break; case "Финский": lp.OutputLang = Lang.Fi; break; case "Французский": lp.OutputLang = Lang.Fr; break; case "Хорватский": lp.OutputLang = Lang.Hr; break; case "Хинди": break; case "Чешский": lp.OutputLang = Lang.Cs; break; case "Шведский": lp.OutputLang = Lang.Sv; break; case "Эльфийский (cиндарин)": break; case "Эстонский": lp.OutputLang = Lang.Et; break; case "Японский": break; } #endregion return(lp); }
public static string GetTranslatedText(string textToTranslate, LangPair langPair) { string strLangPair = String.Empty; switch (langPair) { case (LangPair.ChineseSimplifiedToEnglish): strLangPair = "zh-CN%7Cen"; break; case (LangPair.EnglishToChineseSimplified): strLangPair = "en%7Czh-CN"; break; case (LangPair.EnglishToFrench): strLangPair = "en%7Cfr"; break; case (LangPair.EnglishToGerman): strLangPair = "en%7Cde"; break; case (LangPair.EnglishToItalian): strLangPair = "en%7Cit"; break; case (LangPair.EnglishToJapanese): strLangPair = "en%7Cja"; break; case (LangPair.EnglishToKorean): strLangPair = "en%7Cko"; break; case (LangPair.EnglishToPortuguese): strLangPair = "en%7Cpt"; break; case (LangPair.EnglishToSpanish): strLangPair = "en%7Ces"; break; case (LangPair.FrenchToEnglish): strLangPair = "fr%7Cen"; break; case (LangPair.FrenchToGerman): strLangPair = "fr%7Cde"; break; case (LangPair.GermanToEnglish): strLangPair = "de%7Cen"; break; case (LangPair.GermanToFrench): strLangPair = "de%7Cfr"; break; case (LangPair.ItalianToEnglish): strLangPair = "it%7Cen"; break; case (LangPair.JapaneseToEnglish): strLangPair = "ja%7Cen"; break; case (LangPair.KoreanToEnglish): strLangPair = "ko%7Cen"; break; case (LangPair.PortugueseToEnglish): strLangPair = "pt%7Cen"; break; case (LangPair.SpanishToEnglish): strLangPair = "es%7Cen"; break; default: strLangPair = "en%7Cde"; break; } WebWagon.HTMLPage ww = new WebWagon.HTMLPage(); ww.LoadSource("http://translate.google.com/translate_t?text=" + textToTranslate + "&langpair=" + strLangPair); string[] stuff = ww.GetTagsByName("div"); Regex findData = new Regex(@"<(?<tag>.*).*>(?<text>.*)</\k<tag>>"); Match foundData = findData.Match(stuff[0]); return(foundData.Groups["text"].Value); }