private void dataInit() { OCREngine ocr; string res = null; if (Common.appSettings.OCRsource == "TesseractOCR") { ocr = new TesseractOCR(); if (ocr.OCR_Init("", "") != false) { ocr.SetOCRSourceLang(Common.appSettings.GlobalOCRLang); res = ocr.OCRProcess(new System.Drawing.Bitmap(img)); if (res != null) { sourceText.Text = res; } else { HandyControl.Controls.Growl.ErrorGlobal($"TesseractOCR {Application.Current.Resources["APITest_Error_Hint"]}\n{ocr.GetLastError()}"); } } else { HandyControl.Controls.Growl.ErrorGlobal($"TesseractOCR {Application.Current.Resources["APITest_Error_Hint"]}\n{ocr.GetLastError()}"); } } else if (Common.appSettings.OCRsource == "TesseractOCR5") { ocr = new Tesseract5OCR(); if (ocr.OCR_Init(Common.appSettings.Tesseract5OCR_Path, Common.appSettings.Tesseract5OCR_Args)) { ocr.SetOCRSourceLang(Common.appSettings.GlobalOCRLang); res = ocr.OCRProcess(new System.Drawing.Bitmap(img)); if (res != null) { sourceText.Text = res; } else { HandyControl.Controls.Growl.ErrorGlobal($"TesseractOCR5 {Application.Current.Resources["APITest_Error_Hint"]}\n{ocr.GetLastError()}"); } } else { HandyControl.Controls.Growl.ErrorGlobal($"TesseractOCR5 {Application.Current.Resources["APITest_Error_Hint"]}\n{ocr.GetLastError()}"); } } else if (Common.appSettings.OCRsource == "BaiduOCR") { ocr = new BaiduGeneralOCR(); if (ocr.OCR_Init(Common.appSettings.BDOCR_APIKEY, Common.appSettings.BDOCR_SecretKey)) { ocr.SetOCRSourceLang(Common.appSettings.GlobalOCRLang); res = ocr.OCRProcess(new System.Drawing.Bitmap(img)); if (res != null) { sourceText.Text = res; } else { HandyControl.Controls.Growl.ErrorGlobal($"百度OCR {Application.Current.Resources["APITest_Error_Hint"]}\n{ocr.GetLastError()}"); } } else { HandyControl.Controls.Growl.ErrorGlobal($"百度OCR {Application.Current.Resources["APITest_Error_Hint"]}\n{ocr.GetLastError()}"); } } if (res == null) { FirstTransText.Text = "OCR ERROR"; } else { ITranslator translator1 = TranslateWindow.TranslatorAuto(Common.appSettings.FirstTranslator); ITranslator translator2 = TranslateWindow.TranslatorAuto(Common.appSettings.SecondTranslator); //5.提交翻译 string transRes1 = ""; string transRes2 = ""; if (translator1 != null) { transRes1 = translator1.Translate(res, Common.UsingDstLang, Common.UsingSrcLang); } if (translator2 != null) { transRes2 = translator2.Translate(res, Common.UsingDstLang, Common.UsingSrcLang); } FirstTransText.Text = transRes1; SecondTransText.Text = transRes2; } }
private void dataInit() { IOptChaRec ocr; string res = null; if (Common.appSettings.OCRsource == "TesseractOCR") { ocr = new TesseractOCR(); if (ocr.OCR_Init("", "") != false) { ocr.SetOCRSourceLang(Common.appSettings.GlobalOCRLang); res = ocr.OCRProcess(new System.Drawing.Bitmap(img)); if (res != null) { sourceText.Text = res; } else { HandyControl.Controls.Growl.ErrorGlobal("TesseractOCR 工作异常\n" + ocr.GetLastError()); } } else { HandyControl.Controls.Growl.ErrorGlobal("TesseractOCR 工作异常\n" + ocr.GetLastError()); } } else if (Common.appSettings.OCRsource == "BaiduOCR") { ocr = new BaiduGeneralOCR(); if (ocr.OCR_Init(Common.appSettings.BDOCR_APIKEY, Common.appSettings.BDOCR_SecretKey) != false) { ocr.SetOCRSourceLang(Common.appSettings.GlobalOCRLang); res = ocr.OCRProcess(new System.Drawing.Bitmap(img)); if (res != null) { sourceText.Text = res; } else { HandyControl.Controls.Growl.ErrorGlobal("百度OCR API工作异常\n" + ocr.GetLastError()); } } else { HandyControl.Controls.Growl.ErrorGlobal("百度OCR API工作异常\n" + ocr.GetLastError()); } } if (res == null) { FirstTransText.Text = "OCR ERROR"; } else { ITranslator translator1 = TranslateWindow.TranslatorAuto(Common.appSettings.FirstTranslator); ITranslator translator2 = TranslateWindow.TranslatorAuto(Common.appSettings.SecondTranslator); //5.提交翻译 string transRes1 = ""; string transRes2 = ""; if (translator1 != null) { transRes1 = translator1.Translate(res, Common.UsingDstLang, Common.UsingSrcLang); } if (translator2 != null) { transRes2 = translator2.Translate(res, Common.UsingDstLang, Common.UsingSrcLang); } FirstTransText.Text = transRes1; SecondTransText.Text = transRes2; } }