public MyTranslateBuild(string lang, bool isEnglishBase = false) { this.Lang = lang; this.GoogleTranslateLang = lang_to_googlelang(lang); string resoucefilename = System.IO.Path.Combine(Program.BaseDirectory, "config", "translate", lang + ".txt"); this.TranslateResource = new MyTranslateResourceLow(); this.TranslateResource.LoadResource(resoucefilename); this.TranslateResourceEN = null; if (isEnglishBase && lang != "en") { //英語から翻訳する 日本語->多言語 より、 英語->多言語の方が効率が良い場合がある. string resoucefilenameEN = System.IO.Path.Combine(Program.BaseDirectory, "config", "translate", "en.txt"); if (File.Exists(resoucefilenameEN)) { this.TranslateResourceEN = new MyTranslateResourceLow(); this.TranslateResourceEN.LoadResource(resoucefilenameEN); } } //一行ずつ翻訳したものをキャッシュにいれる. this.TranslateCache = this.TranslateResource.ConvertOnelineSplitWord(); //固定文の翻訳辞書 this.TransDic = new Dictionary <string, string>(); TranslateTextUtil.AppendFixedDic(this.TransDic, "ja", lang); }
public static Dictionary <string, string> MakeFixedDic( string tralnslate_from, string tralnslate_to , string rom_from, string rom_to ) { //よくある定型文の翻訳辞書 Dictionary <string, string> transDic = new Dictionary <string, string>(); if (rom_from != "" && rom_to != "") { transDic = TranslateTextUtil.LoadTranslateDic(tralnslate_from, tralnslate_to, rom_from, rom_to); } //固定文の辞書 TranslateTextUtil.AppendFixedDic(transDic, tralnslate_from, tralnslate_to); return(transDic); }