try
{
// 初始化OCR引擎
_ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.Professional, false);
// 启动OCR引擎
_ocrEngine.Startup(null, null, null, @"D:\LEADTOOLS 19\Bin\Common\OcrProfessionalRuntime");
// 创建文档
_ocrDocument = _ocrEngine.DocumentManager.CreateDocument();
//将语言设置为中文简体,中文繁体为"zh-Hant"
_ocrEngine.LanguageManager.EnableLanguages(new string[] { "zh-Hans" });//zh-Hans en
MessageBox.Show("OCR引擎成功启动");
string fileName = Path.Combine(Application.StartupPath, @"D:\01.jpg");
//将包含中文字符的文件添加至OCR文档
IOcrPage page = _ocrDocument.Pages.AddPage(fileName, null);
int pageCount = _ocrDocument.Pages.Count;
// // 显示此页面的相关信息
string message = string.Format(
"共{0}页\n最后添加的页面大小 = {1} * {2}\n分辨率 = {3} * {4}\n每个像素的位数 = {5}\n",
pageCount,
page.Width, page.Height,
page.DpiX, page.DpiY,
page.BitsPerPixel);
MessageBox.Show(message);
// 识别所有页面
// 注意,我们不需要调用AutoZone,引擎会检查页面是否被分区,若无,则会自动分区
_ocrDocument.Pages.Recognize(null);
// 将结果保存为Word文件
string wordFileName = Path.Combine(Application.StartupPath, @"D:\Result.docx");
_ocrDocument.Save(wordFileName, DocumentFormat.Docx, null);
// 显示我们刚刚保存的word文件
System.Diagnostics.Process.Start(wordFileName);
// 释放此文档
_ocrDocument.Dispose();
// 关闭OCR引擎
_ocrEngine.Shutdown();
MessageBox.Show("OCR引擎关闭");
}
catch (Exception ex)//如果出现错误则执行错误处理语句
{
MessageBox.Show(ex.ToString(), "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
问题1: 我编译程序后,怎么在不安装LEADTOOLS 19的情况下使用OCR识别,这个路径要求必须安装LEADTOOLS 19
_ocrEngine.Startup(null, null, null, @"D:\LEADTOOLS 19\Bin\Common\OcrProfessionalRuntime");
问题2:图片识别内容,如何保存为字符串,现在是把识别结果放在DOC文件中,我不想每次把识别结果放在DOC文件中。
谢谢版主指教!!
|
|