Search Results for

    Show / Hide Table of Contents

    Class OcrProgressEventsArgs

    An event allowing developers to track and display progress of longer OCR jobs.

    Use the OcrProgress event to receive detailed notifications of ocr job progress.

    Inheritance
    System.Object
    OcrProgressEventsArgs
    Namespace: IronOcr.Events
    Assembly: IronOcr.dll
    Syntax
    public class OcrProgressEventsArgs : EventArgs

    Progress on a long OCR job, percentage done, pages finished, and elapsed time, arrives in OcrProgressEventsArgs. The object is delivered to a handler each time IronOCR advances through a multi-page read, so an application can update a progress bar or log throughput instead of leaving the user waiting on an opaque call. It is what a developer reads when wiring feedback into batch recognition.

    A developer never constructs one. It is handed to the OcrProgress event on IronTesseract, typed as EventHandler<OcrProgressEventsArgs>. Subscribe before calling Read, and the handler fires as the engine works through the input; the event argument carries a fresh snapshot on each callback. Because the read may run on a worker thread, marshal any UI update back to the UI thread inside the handler.

    The snapshot exposes six read-only values. ProgressPercent is the headline figure for a progress bar, while PagesComplete and TotalPages give the same idea as a page count, so a 3-of-10 read reads naturally either way. StartTimeUTC records when the job began, EndTimeUTC is a Nullable<DateTime> that stays null until the job finishes, and Duration is the elapsed TimeSpan so far. Read ProgressPercent for a simple indicator, and pair Duration with ProgressPercent when reporting an estimated time remaining for a long batch. Every property is get-only, so treat the argument as an immutable report of that moment rather than something to modify, and capture only the values you intend to display since the next callback supplies a newer snapshot.

    using IronOcr;
    
    var ocr = new IronTesseract();
    ocr.OcrProgress += (sender, e) =>
        Console.WriteLine($"{e.ProgressPercent}% ({e.PagesComplete}/{e.TotalPages})");
    ocr.Read(input);

    The progress tracking how-to wires the event to a progress display, the progress tracking example shows a working handler, and the async OCR how-to keeps the read off the calling thread.

    Constructors

    OcrProgressEventsArgs()

    Declaration
    public OcrProgressEventsArgs()

    Properties

    Duration

    The time taken for the entire OCR job. The counter stops when OCR is complete on every page.

    Declaration
    public TimeSpan Duration { get; }
    Property Value
    Type Description
    System.TimeSpan

    EndTimeUTC

    The DateTime at which the Read(OcrInputBase) OCR job was 100% completed in UTC format.

    null while OCR is still in progress

    Declaration
    public Nullable<DateTime> EndTimeUTC { get; }
    Property Value
    Type Description
    System.Nullable<System.DateTime>

    PagesComplete

    The number of pages where OCR 'reading' has been fully completed. They are normally processed in parallel across multiple CPU cores.

    Declaration
    public int PagesComplete { get; }
    Property Value
    Type Description
    System.Int32

    ProgressPercent

    OCR job progress as a percentage of pages completed. Values range from 0 to 100.

    Declaration
    public int ProgressPercent { get; }
    Property Value
    Type Description
    System.Int32

    StartTimeUTC

    The DateTime at which the Read(OcrInputBase) OCR job started in UTC format.

    Declaration
    public DateTime StartTimeUTC { get; }
    Property Value
    Type Description
    System.DateTime

    TotalPages

    The total number of pages being OCR 'read' by Read(OcrInputBase) method class.

    Declaration
    public int TotalPages { get; }
    Property Value
    Type Description
    System.Int32

    See Also

    OcrProgress
    ☀
    ☾
    Downloads
    • Download with Nuget
    • Start for Free
    In This Article
    Back to top
    Install with Nuget