Class OcrInputPage
A full page (one image) within an OcrInput object.
Namespace: IronOcr
Assembly: IronOcr.dll
Syntax
public class OcrInputPage : Object
OcrInputPage is one page, a single image, inside an OcrInput. A developer reaches for it to inspect or adjust an individual page after loading, rather than treating the whole input as one block: read a page's dimensions, restrict the read to a region, or export the page back out as an image. The pages of an input are enumerated by OcrInputBase.GetPages, which returns one OcrInputPage per loaded image.
The geometry properties describe the page as loaded. Width and Height give its pixel size, HorizontalDPI and VerticalDPI its resolution, and Index its position in the input. ContentArea is the one settable property: assign a Rectangle to limit recognition to part of the page, the building block behind region-of-interest reads. The methods cover two jobs. Region discovery is handled by FindTextRegion, which returns the bounding rectangle of the text on the page, and GetTextRegions, which returns a list of regions for a page with several text blocks. Image export is handled by ToBitmap, which returns the page as an AnyBitmap, SaveAsImage, which writes it to a file, GetCropRectangleImage, which returns just the ContentArea, and DrawRectanglesOnPage, which renders rectangles onto the page for debugging.
Set ContentArea to read only the part of a page that matters, or call FindTextRegion first to let IronOCR locate the text, then read the input as usual. Do not confuse OcrInputPage with OcrInput.Page, the nested type that extends it.
The region of an image how-to reads a content area, and the input images how-to loads the pages.
using var input = new OcrInput();
input.LoadImage("page.png");
OcrInputPage page = input.GetPages().First();
page.ContentArea = new Rectangle(0, 0, 600, 200);Properties
ContentArea
Crop area of this page. If not null, text will only be read from within the ContentArea rectangle.
Declaration
public Rectangle ContentArea { get; set; }
Property Value
| Type | Description |
|---|---|
| IronSoftware.Drawing.Rectangle |
Height
Height in Pixels
Declaration
public int Height { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
HorizontalDPI
Resolution in DPI on X axis
Declaration
public int HorizontalDPI { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
Index
Zero based page number
Declaration
public int Index { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
VerticalDPI
Resolution in DPI on Y axis
Declaration
public int VerticalDPI { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
Width
Width in Pixels
Declaration
public int Width { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
Methods
DrawRectanglesOnPage(Rectangle[], Color)
Draw many Rectangles on a OcrInputPage.
Declaration
public AnyBitmap DrawRectanglesOnPage(Rectangle[] CropRects, Color rectangleColor)
Parameters
| Type | Name | Description |
|---|---|---|
| IronSoftware.Drawing.Rectangle[] | CropRects | Crop Rectangle |
| IronSoftware.Drawing.Color | rectangleColor | Color for pen of rectangle border |
Returns
| Type | Description |
|---|---|
| IronSoftware.Drawing.AnyBitmap | Bitmap |
FindMultipleTextRegions()
Use computer vision to detect areas which contain text elements and divide the page into separate images based on text regions.
Declaration
public List<OcrInputPage> FindMultipleTextRegions()
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.List<OcrInputPage> | List of rectangles which contain text elements |
Remarks
Useful for generating several OCR results from a single image/page
FindTextRegion()
Use computer vision to detect regions which contain text elements and instruct Tesseract to only search for text within the area in which text was detected.
Declaration
public Rectangle FindTextRegion()
Returns
| Type | Description |
|---|---|
| IronSoftware.Drawing.Rectangle | Rectangle which contains text elements |
GetCropRectangleImage()
Draw a Rectangle on a OcrInputPage.
Declaration
public AnyBitmap GetCropRectangleImage()
Returns
| Type | Description |
|---|---|
| IronSoftware.Drawing.AnyBitmap | Bitmap |
GetTextRegions()
Use computer vision to detect areas which contain text elements and return a list of rectangles.
Declaration
public List<Rectangle> GetTextRegions()
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.List<IronSoftware.Drawing.Rectangle> | List of rectangles which contain text elements |
Remarks
Useful for generating several OCR results from a single image/page
SaveAsImage(String)
Saves this page as a Bitmap file to a specified path.
A file path.Declaration
public void SaveAsImage(string Path)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | Path |
SaveAsImage(String, AnyBitmap.ImageFormat)
Saves this page as an image file of specified format.
A file path. The desired image file format.Declaration
public void SaveAsImage(string Path, AnyBitmap.ImageFormat Format)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | Path | |
| IronSoftware.Drawing.AnyBitmap.ImageFormat | Format |
ToBitmap()
Outputs this page as a IronSoftware.Drawing.AnyBitmap
Declaration
public AnyBitmap ToBitmap()
Returns
| Type | Description |
|---|---|
| IronSoftware.Drawing.AnyBitmap | A native bitmap image. |