private static string TranslateWithEscape(string jpStr)
        {
            var perSep = new SeperatedString(jpStr, "%");

            for (int i = 0; i < perSep.SeperatedStrings.Length; i++)
            {
                if (i % 2 == 1)
                {
                    continue;
                }
                var braceSep = new SeperatedString(perSep.SeperatedStrings[i], "{", "}");
                for (int j = 0; j < braceSep.SeperatedStrings.Length; j++)
                {
                    if (j % 2 == 1)
                    {
                        continue;
                    }
                    var atSep = new SeperatedString(braceSep.SeperatedStrings[j], "\\@");
                    for (int k = 0; k < atSep.SeperatedStrings.Length; k++)
                    {
                        if (k % 2 == 1)
                        {
                            continue;
                        }
                        TranslateXP.Translate(ref atSep.SeperatedStrings[k]);
                    }
                    braceSep.SeperatedStrings[j] = atSep.ToString();
                }
                perSep.SeperatedStrings[i] = braceSep.ToString();
            }
            return(perSep.ToString());
        }
 public static string TranslateWithFillter(LineInfo info)
 {
     if (info.IsForm)
     {
         return(TranslateWithEscape(info.Str));
     }
     else if (info.IsFormS)
     {
         return(null);
     }
     else
     {
         return(TranslateXP.Translate(info.Str));
     }
 }
Exemple #3
0
 static void Main(string[] args)
 {
     Properties.Settings.Default.Reload();
     if (!Directory.Exists(ResourceFolderPath))
     {
         Directory.CreateDirectory(ResourceFolderPath);
     }
     if (!Directory.Exists(RootPath + "Backup"))
     {
         Directory.CreateDirectory(RootPath + "Backup");
     }
     Application.EnableVisualStyles();
     Application.SetCompatibleTextRenderingDefault(false);
     try
     {
         string    ezPath = "";
         ConfigDic config = new ConfigDic();
         config.Load(ConfigFilePath);
         if (!config.TryGetValue("ezTransXP_Path", out ezPath))
         {
             FolderBrowserDialog dialog = new FolderBrowserDialog();
             dialog.ShowNewFolderButton = true;
             dialog.Description         = "ezTrans XP가 설치된 경로를 선택해 주세요";
             dialog.ShowDialog();
             ezPath = dialog.SelectedPath;
             config.SetValue("ezTransXP_Path", ezPath);
             dialog.Dispose();
         }
         int result = TranslateXP.Initialize(ezPath);
         if (result != 0)
         {
             MessageBox.Show("EZTransXP 로드에 실패하였습니다.\nCode: " + result);
             return;
         }
         Application.Run(new MainForm(config));
         config.Save(ConfigFilePath);
         TranslateXP.Terminate();
     }
     catch (Exception e)
     {
         FileStream fs = new FileStream(LogFilePath, FileMode.Create);
         new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter().Serialize(fs, e);
         fs.Flush();
         fs.Dispose();
         Trace.Assert(false, e.Message);
     }
 }
Exemple #4
0
        static void Main(string[] args)
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
#if !DEBUG
            try
            {
#endif
            var config = new ConfigDic();
            config.Load(new FileStream(ConfigFilePath, FileMode.OpenOrCreate));
            if (!config.TryGetValue("ezTransXP_Path", out string ezPath))
            {
                var dialog = new FolderBrowserDialog()
                {
                    ShowNewFolderButton = true,
                    Description         = "ezTrans XP가 설치된 경로를 선택해 주세요"
                };
                dialog.ShowDialog();
                ezPath = dialog.SelectedPath;
                config.SetValue("ezTransXP_Path", ezPath);
                dialog.Dispose();
            }
            int result = TranslateXP.Initialize(ezPath);
            if (result != 0)
            {
                MessageBox.Show("EZTransXP 로드에 실패하였습니다.\nCode: " + result);
                return;
            }
            Application.Run(new MainForm(config));
            config.Save(new FileStream(ConfigFilePath, FileMode.Create));
            TranslateXP.Terminate();
#if !DEBUG
        }

        catch (Exception e)
        {
            var fs = new FileStream(LogFilePath, FileMode.Create);
            new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter().Serialize(fs, e);
            fs.Flush();
            fs.Dispose();
            MessageBox.Show(e.Message + "\r\n\r\n\r\n" + e.StackTrace, "에러발생!", MessageBoxButtons.OK, MessageBoxIcon.Error);
            return;
        }
#endif
        }
Exemple #5
0
 private static void ExitEzEmuera()
 {
     TranslateXP.SaveCache(Path.Combine(ExeDir, "cache.dat"));
     TranslateXP.Terminate();
     File.WriteAllText(Path.Combine(ExeDir, "userdic.json"), JsonConvert.SerializeObject(TranslateXP.UserDic, Formatting.Indented));
 }
Exemple #6
0
        private static void InitEzEmuera()
        {
            var cachePath = Path.Combine(ExeDir, "cache.dat");

            if (File.Exists(cachePath))
            {
                TranslateXP.LoadCache(cachePath);
            }
            else
            {
                TranslateXP.LoadCache(null);
            }

            var dicPath = Path.Combine(ExeDir, "userdic.json");

            if (File.Exists(dicPath))
            {
                TranslateXP.UserDic = JsonConvert.DeserializeObject <UserDictionary>(File.ReadAllText(dicPath));
            }
            else
            {
                TranslateXP.UserDic = new UserDictionary();
            }

            var setting = new EzEmueraSetting
            {
                ReadEncodingCode = 932
            };

            var jsonPath = Path.Combine(ExeDir, "ez.json");

            if (File.Exists(jsonPath))
            {
                setting = JsonConvert.DeserializeObject <EzEmueraSetting>(File.ReadAllText(jsonPath));
            }

            if (string.IsNullOrEmpty(setting.EzTransPath))
            {
                using (var dialog = new FolderBrowserDialog())
                {
                    dialog.Description = "이지트랜스 경로를 설정해주세요";

                    if (dialog.ShowDialog() != DialogResult.OK)
                    {
                        return;
                    }

                    setting.EzTransPath = dialog.SelectedPath;
                }
            }

            Config.Encode = setting.ReadEncoding;

            int result = TranslateXP.Initialize(setting.EzTransPath);

            if (result != 0)
            {
                if (result == 126)
                {
                    setting.EzTransPath = "";
                }

                MessageBox.Show($"에러코드: {result}", "ezTrans 초기화에 실패했습니다");
            }


            File.WriteAllText(jsonPath, JsonConvert.SerializeObject(setting, Formatting.Indented));
            GlobalStatic.EzTransState = TranslateXP.IsInitialized;
        }
Exemple #7
0
 private void 자동번역버튼_Click(object sender, EventArgs e)
 {
     Translated_Text.Text = TranslateXP.Translate(Original_Text.Text);
 }