←Select platform

Process Event

Summary

Represents a process event.

Syntax
C#
VB
C++
public event EventHandler<ProgressEventArgs> Process 
Public Event Process As EventHandler(Of ProgressEventArgs) 
public: 
event EventHandler<ProgressEventArgs^>^ Process 

Event Data

The event handler receives an argument of type ProgressEventArgs containing data related to this event. The following ProgressEventArgs properties provide information specific to this event.

Property Description
Cancel Gets or sets the Cancel flag. When set to true cancels the process.
CurrentField The current field that is being processed.
FieldType The current BankCheckField type that will be or has been processed.
Percentage The current percent completion for processing the bank check image.
State The current state for the bank check image processing .

Example
C#
VB
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Forms.Common; 
using Leadtools.Ocr; 
using Leadtools.Forms.Commands; 
 
public void TestBankCheckReader() 
{ 
   // Initialize the RasterCodecs class 
   RasterCodecs codecs = new RasterCodecs(); 
 
   // Initialize the BankCheckReader class 
   BankCheckReader checkReader = new BankCheckReader(); 
 
   // The bank cheque image 
   string chequePath = Path.Combine(LEAD_VARS.ImagesDir, "BankCheck.jpg"); 
   RasterImage image = codecs.Load(chequePath); 
 
   IOcrEngine ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.LEAD); 
   ocrEngine.Startup(codecs, null, null, LEAD_VARS.OcrLEADRuntimeDir); 
   // Assign Engine to Reader 
   checkReader.OcrEngine = ocrEngine; 
 
   //Set MICR code type 
   checkReader.MicrFontType = BankCheckMicrFontType.E13b; 
 
   // handle Process Event 
   checkReader.Process += new EventHandler<ProgressEventArgs>(reader_Processed); 
 
   // Process Image 
   checkReader.ProcessImage(image); 
 
   ocrEngine.Shutdown(); 
} 
 
void reader_Processed(object sender, ProgressEventArgs e) 
{ 
   Console.WriteLine(string.Format("State      : {0}%", e.State)); 
   Console.WriteLine(string.Format("Percentage : {0}%", e.Percentage)); 
   Console.WriteLine(string.Format("FieldType  : {0}%", e.FieldType.ToString())); 
 
   if (e.State == ProcessState.Finish) 
   { 
      BankCheckReader reader = sender as BankCheckReader; 
      foreach (var value in reader.Results) 
      { 
         LeadRect bounds = value.Value.Bounds; 
         Console.WriteLine(string.Format("Field Name      : {0}", value.Key)); 
         Console.WriteLine(string.Format("Field Value     : {0}", value.Value.Text)); 
         Console.WriteLine(string.Format("Field Bounds    : {0},{0},{0},{0}", bounds.X.ToString(), bounds.Y.ToString(), bounds.Width.ToString(), bounds.Height.ToString())); 
         Console.WriteLine("************************************"); 
      } 
   } 
} 
 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; 
   public const string OcrLEADRuntimeDir = @"C:\LEADTOOLS 21\Bin\Common\OcrLEADRuntime"; 
} 
Imports Leadtools 
Imports Leadtools.Codecs 
Imports Leadtools.Forms.Common 
Imports Leadtools.Ocr 
Imports Leadtools.Forms.Commands 
 
Public Sub TestBankCheckReader() 
   ' Initialize the RasterCodecs class 
   Dim codecs As New RasterCodecs() 
 
   ' Initialize the BankCheckReader class 
   Dim checkReader As New BankCheckReader() 
 
   ' The bank check image 
   Dim chequePath As String = Path.Combine(LEAD_VARS.ImagesDir, "BankCheck.jpg") 
   Dim image As RasterImage = codecs.Load(chequePath) 
 
   Using ocrEngine As IOcrEngine = OcrEngineManager.CreateEngine(OcrEngineType.LEAD) 
      ocrEngine.Startup(Nothing, Nothing, Nothing, "C:\LEADTOOLS21\Bin\Common\OcrLEADRuntime") 
      ' Assign Engine to Reader 
      checkReader.OcrEngine = ocrEngine 
 
      ' handle Process Event 
      AddHandler checkReader.Process, AddressOf reader_Processed 
 
      ' Process Image 
      checkReader.ProcessImage(image) 
   End Using 
End Sub 
 
Private Sub reader_Processed(sender As Object, e As ProgressEventArgs) 
   Console.WriteLine(String.Format("State      : {0}%", e.State)) 
   Console.WriteLine(String.Format("Percentage : {0}%", e.Percentage)) 
   Console.WriteLine(String.Format("FieldType  : {0}%", e.FieldType.ToString())) 
 
   If e.State = ProcessState.Finish Then 
      Dim reader As BankCheckReader = TryCast(sender, BankCheckReader) 
      If reader IsNot Nothing Then 
         For Each value As KeyValuePair(Of String, BankCheckField) In reader.Results 
            Dim bounds As LeadRect = value.Value.Bounds 
            Console.WriteLine(String.Format("Field Name      : {0}", value.Key)) 
            Console.WriteLine(String.Format("Field Value     : {0}", value.Value.Text)) 
            Console.WriteLine(String.Format("Field Bounds    : {0},{0},{0},{0}", bounds.X.ToString(), bounds.Y.ToString(), bounds.Width.ToString(), bounds.Height.ToString())) 
            Console.WriteLine("************************************") 
         Next 
      End If 
   End If 
End Sub 
 
 
Public NotInheritable Class LEAD_VARS 
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" 
End Class 

Requirements

Target Platforms

Help Version 21.0.2020.9.23
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2020 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Forms.Commands Assembly