private static void ResizeImage(ImageClass imageClass, string site) { imageClass.Resize(10); string directory = Path.Combine(Application.StartupPath, new Uri(site).Host, "zoomed"); Directory.CreateDirectory(directory); imageClass.SaveAs(directory); }
public static string Recognize(Bitmap bitmap, int series) { Dictionary <string, int> versions = new Dictionary <string, int>(); using (ImageClass image = new ImageClass(bitmap)) { for (int i = 0; i < series; i++) { string result = ""; try { using (Bitmap b = new Bitmap(image.BitImage)) { result = Recognize(b); } } catch (RecognitionEngineException exception) { //если ошибка из-за отсутствия текста if (exception.ErrorCode == 6553609) { if (!versions.ContainsKey(result)) { versions.Add(result, 1); } break; } //если ошибка из-за отсутствия текста[2] if (exception.ErrorCode == 6684676) { if (!versions.ContainsKey(result)) { versions.Add(result, 1); } break; } bitmap.Save(Path.Combine(Application.StartupPath, bitmap.GetHashCode().ToString() + ".png"), ImageFormat.Png); throw; } if (versions.ContainsKey(result)) { versions[result]++; } else { versions.Add(result, 1); } image.Resize(0.9); } } int max = 0; string sMax = ""; foreach (KeyValuePair <string, int> pair in versions) { if (string.IsNullOrEmpty(pair.Key)) continue; if (pair.Value > max) { sMax = pair.Key; max = pair.Value; } } return sMax; }
private static void SetXls(string url, string site, ImageClass imageClass, string origName) { string[] imaName = GetPictureDate(url).Split('.'); string fileName = ""; for (int i = 0; i < imaName.Length - 1; i++) { fileName += imaName[i] + '.'; } fileName += "xlsx"; string directory = Path.Combine(Application.StartupPath, new Uri(site).Host, "rAndreevLists"); if (!File.Exists(Path.Combine(directory, fileName))) { imageClass.RecognizeToExcel(directory, fileName); ExcelClass xls = new ExcelClass(); try { xls.OpenDocument(Path.Combine(directory, fileName), false); xls.AddPicture(origName, "H1"); } finally { xls.CloseDocumentSave(); xls.Dispose(); } } }