c#
VB
objective - c
c++
Java
公共委托无效OcrProgressCallback (
IOcrProgressData数据
)
公共委托子OcrProgressCallback (_
按值传递数据作为IOcrProgressData_
)
类型定义无效(^ LTOcrProgressHandler) (LTOcrProgressData * progressData)
无效OcrProgressListener.onProgress (OcrProgressData数据)
公共委托无效OcrProgressCallback (
IOcrProgressData ^数据
)
数据
的一个实例IOcrProgressData接口回调数据包含进展。
OCR引擎将不断在不同OCR操作调用回调过程的一个实例IOcrProgressData提供当前处理阶段和价值比例指标。使用这个函数来表示应用程序操作的过程。
回调可以设置IOcrProgressData.Status财产在任何时间OcrProgressStatus.Abort中止OCR过程并取消所有等待操作。
这个例子将显示一个简单的“处理”Windows窗体对话框,可以用来表示OCR操作进展以及允许用户中止当前操作。你可以把这个对话框到您的应用程序和调用它以响应用户界面命令对应OCR操作。
使用Leadtools;
使用Leadtools.Codecs;
使用Leadtools.Ocr;
使用Leadtools.Document.Writer;
使用Leadtools.Forms.Common;
使用Leadtools.WinForms;
公共无效OcrProgressCallbackExample ()
{
字符串logFileName = Path.Combine (LEAD_VARS.ImagesDir,“log.txt”);
字符串multiPageTifFileName = Path.Combine (LEAD_VARS.ImagesDir,“Ocr.tif”);
字符串pdfFileName = Path.Combine (LEAD_VARS.ImagesDir,“Ocr1.pdf”);
/ /创建日志文本的作家
_log = File.CreateText (logFileName);
/ /创建一个实例的引擎
使用(IOcrEngine ocrEngine = OcrEngineManager.CreateEngine (OcrEngineType.LEAD))
{
/ /启动引擎使用默认参数
ocrEngine.Startup (零,零,零,LEAD_VARS.OcrLEADRuntimeDir);
/ /创建一个OCR文档
使用(IOcrDocument ocrDocument = ocrEngine.DocumentManager.CreateDocument ())
{
/ /将图片添加到文档中
_log.WriteLine (“添加页面”);
_log.WriteLine (“* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *”);
ocrDocument.Pages。AddPages (multiPageTifFileName, 1, 1,新OcrProgressCallback (MyOcrProgressCallback));
/ / Auto-recognize区所有的页面
_log.WriteLine (“Auto-zoning”);
_log.WriteLine (“* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *”);
ocrDocument.Pages.AutoZone (新OcrProgressCallback (MyOcrProgressCallback));
/ /识别它并将其保存为PDF
_log.WriteLine (“识别”);
_log.WriteLine (“* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *”);
ocrDocument.Pages.Recognize (新OcrProgressCallback (MyOcrProgressCallback));
_log.WriteLine (“保存为PDF”);
_log.WriteLine (“* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *”);
ocrDocument。保存(pdfFileName DocumentFormat.Pdf,新OcrProgressCallback (MyOcrProgressCallback));
}
/ /关闭引擎
/ /注意:调用处理也会自动关闭发动机如果它已经启动
ocrEngine.Shutdown ();
}
_log.WriteLine (“* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *”);
_log.WriteLine (“完整的”);
_log.Flush ();
_log.Close ();
}
/ /将日志保存到文本的作家
私人StreamWriter _log;
私人无效MyOcrProgressCallback (IOcrProgressData数据)
{
如果(数据。比例= = 0)
_log.WriteLine (”- - - - - - - - - - - - - - - - - - - - - - - - - - -”);
_log.WriteLine (”页面:{0}({1}:{2}{3}%操作:{4}”,
data.CurrentPageIndex.ToString (“00”),
data.FirstPageIndex.ToString (“00”),
data.LastPageIndex.ToString (“00”),
data.Percentage.ToString (“000”),
data.Operation);
}
静态类LEAD_VARS
{
公共常量字符串ImagesDir =@“C: \ LEADTOOLS21 \ Resources \图片”;
公共常量字符串OcrLEADRuntimeDir =@“C: \ LEADTOOLS21 \ Bin \常见\ OcrLEADRuntime”;
}
进口Leadtools
进口Leadtools.Codecs
进口Leadtools.Ocr
进口Leadtools.Document.Writer
进口Leadtools.Forms
进口Leadtools.WinForms
将日志保存到的文本的作家
私人_log作为StreamWriter
公共子OcrProgressCallbackExample ()
昏暗的logFileName作为字符串= Path.Combine (LEAD_VARS.ImagesDir“log.txt”)
昏暗的multiPageTifFileName作为字符串= Path.Combine (LEAD_VARS.ImagesDir“Ocr.tif”)
昏暗的pdfFileName作为字符串= Path.Combine (LEAD_VARS.ImagesDir“Ocr1.pdf”)
“创建日志文本的作家
_log = File.CreateText (logFileName)
创建一个实例的引擎
使用ocrEngine作为IOcrEngine = OcrEngineManager.CreateEngine (OcrEngineType.LEAD)
“启动引擎使用默认参数
ocrEngine.Startup (没有什么,没有什么,没有什么LEAD_VARS.OcrLEADRuntimeDir)
创建一个OCR文档
使用ocrDocument作为IOcrDocument = ocrEngine.DocumentManager.CreateDocument ()
“这张图片添加到文档中
_log.WriteLine (“添加页面”)
_log.WriteLine (“* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *”)
ocrDocument.Pages。AddPages (multiPageTifFileName, 1, 1,新OcrProgressCallback (AddressOfMyOcrProgressCallback))
“Auto-recognize区所有的页面
_log.WriteLine (“Auto-zoning”)
_log.WriteLine (“* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *”)
ocrDocument.Pages.AutoZone (新OcrProgressCallback (AddressOfMyOcrProgressCallback))
“承认它并将其保存为PDF
_log.WriteLine (“识别”)
_log.WriteLine (“* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *”)
ocrDocument.Pages.Recognize (新OcrProgressCallback (AddressOfMyOcrProgressCallback))
_log.WriteLine (“保存为PDF”)
_log.WriteLine (“* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *”)
ocrDocument。保存(pdfFileName DocumentFormat.Pdf,新OcrProgressCallback (AddressOfMyOcrProgressCallback))
结束使用
“关闭发动机
注意:调用处理也将自动关闭发动机如果它已经启动
ocrEngine.Shutdown ()
结束使用
_log.WriteLine (“* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *”)
_log.WriteLine (“完整的”)
_log.Flush ()
_log.Close ()
结束子
私人子MyOcrProgressCallback(数据作为IOcrProgressData)
如果数据。比例= 0然后
_log.WriteLine (”- - - - - - - - - - - - - - - - - - - - - - - - - - -”)
结束如果
_log.WriteLine (”页面:{0}({1}:{2}{3}%操作:{4}”,
data.CurrentPageIndex.ToString (“00”),
data.FirstPageIndex.ToString (“00”),
data.LastPageIndex.ToString (“00”),
data.Percentage.ToString (“000”),
data.Operation)
结束子
公共NotInheritable类LEAD_VARS
公共常量ImagesDir作为字符串=“C: \ LEADTOOLS21 \ Resources \图片”
公共常量OcrLEADRuntimeDir作为字符串=“C: \ LEADTOOLS21 \ Bin \常见\ OcrLEADRuntime”
结束类
OcrProgressCallback成员