Class OcrReadTask
Represents an asynchronous OCR (Optical Character Recognition) read task.
Inheritance
Namespace: IronOcr
Assembly: IronOcr.dll
Syntax
public class OcrReadTask : Task<OcrResult>
Running an OCR read in the background, while the rest of an application stays responsive, runs through OcrReadTask. It represents one asynchronous recognition job and produces an OcrResult once the read finishes, so a UI app keeps painting and a web request stays free while Tesseract works. Because it derives from the standard Task<OcrResult>, it slots into the usual async/await patterns a developer already knows, while adding OCR-specific construction and cancellation.
A task is created around the synchronous OCR function it wraps. The constructors accept a Func<OcrResult> (the work to run), optionally with a CancellationToken, a TaskCreationOptions value, or a state object for the overloads that take Func<object, OcrResult>. Once started, awaiting the task yields the OcrResult, the same document model a direct Read call would return, with its text, page structure, and confidence intact.
In practice, most code reaches asynchronous OCR through the higher-level read methods rather than constructing this type by hand, but the task is what those methods return and what a developer awaits. The key members are the constructor overloads that bind the OCR function plus its cancellation and scheduling options, and Cancel, which requests that an in-flight read stop. Pair Cancel with a CancellationToken constructor overload so the wrapped function can observe the request and exit cleanly. Everything else, continuations, status, exceptions, comes from the Task<OcrResult> base, so the awaited result and any error handling behave exactly as they do for any other task.
using IronOcr;
var ocr = new IronTesseract();
using var input = new OcrInput();
input.LoadImage("scan.png");
OcrResult result = await ocr.ReadAsync(input);
Console.WriteLine(result.Text);The async OCR how-to walks through reading off the main thread, the multithreading example scales several reads across cores, and the progress tracking how-to reports on a long-running read.
Constructors
OcrReadTask(Func<OcrResult>)
Initializes a new instance of the OcrReadTask class with the specified synchronous OCR function.
Declaration
public OcrReadTask(Func<OcrResult> function)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Func<OcrResult> | function | The synchronous function that represents the OCR operation. |
See Also
OcrReadTask(Func<OcrResult>, CancellationToken)
Initializes a new instance of the OcrReadTask class with the specified synchronous OCR function and cancellation token.
Declaration
public OcrReadTask(Func<OcrResult> function, CancellationToken cancellationToken)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Func<OcrResult> | function | The synchronous function that represents the OCR operation. |
| System.Threading.CancellationToken | cancellationToken | The cancellation token to observe. |
See Also
OcrReadTask(Func<OcrResult>, CancellationToken, TaskCreationOptions)
Initializes a new instance of the OcrReadTask class with the specified synchronous OCR function, cancellation token, and task creation options.
Declaration
public OcrReadTask(Func<OcrResult> function, CancellationToken cancellationToken, TaskCreationOptions creationOptions)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Func<OcrResult> | function | The synchronous function that represents the OCR operation. |
| System.Threading.CancellationToken | cancellationToken | The cancellation token to observe. |
| System.Threading.Tasks.TaskCreationOptions | creationOptions | The options that control the behavior of the OCR task. |
See Also
OcrReadTask(Func<OcrResult>, TaskCreationOptions)
Initializes a new instance of the OcrReadTask class with the specified synchronous OCR function and task creation options.
Declaration
public OcrReadTask(Func<OcrResult> function, TaskCreationOptions creationOptions)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Func<OcrResult> | function | The synchronous function that represents the OCR operation. |
| System.Threading.Tasks.TaskCreationOptions | creationOptions | The options that control the behavior of the OCR task. |
See Also
OcrReadTask(Func<Object, OcrResult>, Object)
Initializes a new instance of the OcrReadTask class with the specified asynchronous OCR function and state object.
Declaration
public OcrReadTask(Func<object, OcrResult> function, object state)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Func<System.Object, OcrResult> | function | The asynchronous function that represents the OCR operation. |
| System.Object | state | An object representing data to be used by the OCR operation. |
See Also
OcrReadTask(Func<Object, OcrResult>, Object, CancellationToken)
Initializes a new instance of the OcrReadTask class with the specified asynchronous OCR function, state object, and cancellation token.
Declaration
public OcrReadTask(Func<object, OcrResult> function, object state, CancellationToken cancellationToken)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Func<System.Object, OcrResult> | function | The asynchronous function that represents the OCR operation. |
| System.Object | state | An object representing data to be used by the OCR operation. |
| System.Threading.CancellationToken | cancellationToken | The cancellation token to observe. |
See Also
OcrReadTask(Func<Object, OcrResult>, Object, CancellationToken, TaskCreationOptions)
Initializes a new instance of the OcrReadTask class with the specified asynchronous OCR function, state object, cancellation token, and task creation options.
Declaration
public OcrReadTask(Func<object, OcrResult> function, object state, CancellationToken cancellationToken, TaskCreationOptions creationOptions)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Func<System.Object, OcrResult> | function | The asynchronous function that represents the OCR operation. |
| System.Object | state | An object representing data to be used by the OCR operation. |
| System.Threading.CancellationToken | cancellationToken | The cancellation token to observe. |
| System.Threading.Tasks.TaskCreationOptions | creationOptions | The options that control the behavior of the OCR task. |
See Also
OcrReadTask(Func<Object, OcrResult>, Object, TaskCreationOptions)
Initializes a new instance of the OcrReadTask class with the specified asynchronous OCR function, state object, and task creation options.
Declaration
public OcrReadTask(Func<object, OcrResult> function, object state, TaskCreationOptions creationOptions)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Func<System.Object, OcrResult> | function | The asynchronous function that represents the OCR operation. |
| System.Object | state | An object representing data to be used by the OCR operation. |
| System.Threading.Tasks.TaskCreationOptions | creationOptions | The options that control the behavior of the OCR task. |
See Also
Methods
Cancel()
Abort the associated Ocr reading
Declaration
public void Cancel()