Search Results for

    Show / Hide Table of Contents

    Class OcrResult.Page

    Represents a single page within an OcrResult object.

    Inheritance
    System.Object
    OcrResult.OcrResultElement
    OcrResult.OcrResultTextElement
    OcrResult.Page
    Implements
    IronSoftware.Abstractions.Pdf.IDocumentTextObject
    IronSoftware.Abstractions.Pdf.IBoundedPdfDocumentObject
    IronSoftware.Abstractions.Pdf.IPdfDocumentObject
    IronSoftware.Abstractions.IDocumentObject
    IronSoftware.Abstractions.IBounded
    IronSoftware.ITransformable
    IronSoftware.Abstractions.IColored
    System.ICloneable
    IronSoftware.Abstractions.Absolute.IDocumentPage<IOcrPageObjectModel>
    IronSoftware.Abstractions.Pdf.IPageContainer
    Inherited Members
    OcrResult.OcrResultTextElement.ToString()
    OcrResult.OcrResultTextElement.Clone()
    OcrResult.OcrResultTextElement.TextDirection
    OcrResult.OcrResultTextElement.Text
    OcrResult.OcrResultTextElement.PdfDocumentId
    OcrResult.OcrResultTextElement.ObjNum
    OcrResult.OcrResultTextElement.Contents
    OcrResult.OcrResultTextElement.Left
    OcrResult.OcrResultTextElement.Right
    OcrResult.OcrResultTextElement.Top
    OcrResult.OcrResultTextElement.Bottom
    OcrResult.OcrResultTextElement.Color
    OcrResult.OcrResultTextElement.BoundingBox
    OcrResult.OcrResultTextElement.Scale
    OcrResult.OcrResultTextElement.Translate
    OcrResult.OcrResultTextElement.Matrix
    OcrResult.OcrResultElement.ToBitmap(OcrInput)
    OcrResult.OcrResultElement.X
    OcrResult.OcrResultElement.Y
    OcrResult.OcrResultElement.Location
    Namespace: IronOcr
    Assembly: IronOcr.dll
    Syntax
    public class Page : OcrResult.OcrResultTextElement

    Everything OCR recognized on a single scanned or rendered page, structured for reading, lives on OcrResult.Page. One page object groups its text into words, lines, paragraphs, and blocks, surfaces any tables and barcodes found, and reports the page geometry, so you can extract plain text or navigate the layout from one place.

    You get pages from a finished read: OcrResult.Pages returns an OcrResultPagesCollection, and each entry is a Page. A multi-page TIFF or PDF produces one Page per source page, ordered by PageNumber (1 based), which is why iterating result.Pages is the normal way to process a document. Each page derives from OcrResult.OcrResultTextElement, so it also carries the shared text, confidence, and bounding members.

    The members fall into clear groups. The text-hierarchy properties are Words, Lines, Paragraphs, Blocks, and Characters, each an array in reading order from coarse to fine; WordCount gives a quick total. The structured-content properties are Tables, an array of OcrResult.Table detected on the page, and Barcodes, populated only when barcode reading is enabled on the input. The geometry properties are Width, Height, Rotation (degrees the original was turned to produce this result), and ContentArea, the Rectangle region OCR was applied to. ObjectModel exposes the page as an IOcrPageObjectModel, and ContentAreaToBitmap returns an AnyBitmap crop of the content area for a given OcrInput. Pick the level you need rather than reading every array.

    using IronOcr;
    
    var ocr = new IronTesseract();
    using var input = new OcrInput();
    input.LoadPdf("invoice.pdf");
    OcrResult result = ocr.Read(input);
    
    foreach (OcrResult.Page page in result.Pages)
        Console.WriteLine($"Page {page.PageNumber}: {page.WordCount} words, {page.Tables.Length} tables");

    The OCR results objects example walks the page tree, the read PDFs how-to produces a page per PDF page, and the read tables how-to works through the Tables array.

    Properties

    Barcodes

    Represents every barcode discovered in this Page. Developers must set ReadBarCodes = True for this feature to be active.

    Declaration
    public OcrResult.Barcode[] Barcodes { get; }
    Property Value
    Type Description
    OcrResult.Barcode[]

    Blocks

    Represents every block of text discovered within this OcrResult.Page in order of appearance.

    Declaration
    public OcrResult.Block[] Blocks { get; }
    Property Value
    Type Description
    OcrResult.Block[]

    Characters

    Represents every symbol (char) discovered within this OcrResult.Page in order of appearance.

    Declaration
    public OcrResult.Character[] Characters { get; }
    Property Value
    Type Description
    OcrResult.Character[]

    Confidence

    OCR statistical accuracy confidence as an average of every character.

    1 = 100%, 0 = 0%

    Declaration
    public override double Confidence { get; }
    Property Value
    Type Description
    System.Double
    Overrides
    OcrResult.OcrResultTextElement.Confidence

    ContentArea

    Represents the rectangular area of this OcrResult.Page page on which OCR has been applied. Dimensions are in Pixels.

    Default value is the entire size of the Page. Relates to IronOcr.OcrInput.AddImage(IronSoftware.Drawing.AnyBitmap,IronSoftware.Drawing.Rectangle)

    Declaration
    public Rectangle ContentArea { get; set; }
    Property Value
    Type Description
    IronSoftware.Drawing.Rectangle

    Height

    Declaration
    public double Height { get; }
    Property Value
    Type Description
    System.Double

    Lines

    Represents every line of text discovered within this OcrResult.Page in order of appearance.

    Declaration
    public OcrResult.Line[] Lines { get; }
    Property Value
    Type Description
    OcrResult.Line[]

    ObjectModel

    Declaration
    public IOcrPageObjectModel ObjectModel { get; }
    Property Value
    Type Description
    IOcrPageObjectModel

    PageIndex

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

    PageNumber

    A 1 based unique identifier for this page within an OcrResult object. The first page is number 1.

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

    Paragraphs

    Represents every paragraph of text discovered within this OcrResult.Page in order of appearance.

    Declaration
    public OcrResult.Paragraph[] Paragraphs { get; }
    Property Value
    Type Description
    OcrResult.Paragraph[]

    Rotation

    The number of degrees the original page has been rotated to produce this result.

    Declaration
    public double Rotation { get; }
    Property Value
    Type Description
    System.Double

    Tables

    Represents every Grouping of Lines that can represent a table.

    Declaration
    public OcrResult.Table[] Tables { get; }
    Property Value
    Type Description
    OcrResult.Table[]

    Width

    Declaration
    public double Width { get; }
    Property Value
    Type Description
    System.Double

    WordCount

    The number of words on this page.

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

    Words

    Represents every word discovered within this OcrResult.Page in order of appearance.

    Declaration
    public OcrResult.Word[] Words { get; }
    Property Value
    Type Description
    OcrResult.Word[]

    Methods

    ContentAreaToBitmap(OcrInput)

    Returns an image of the ContentArea of this OcrResult.Page.

    Declaration
    public AnyBitmap ContentAreaToBitmap(OcrInput Input)
    Parameters
    Type Name Description
    OcrInput Input

    The OcrInput document that was read by IronTesseract

    Returns
    Type Description
    IronSoftware.Drawing.AnyBitmap

    A IronSoftware.Drawing.AnyBitmap.

    Implements

    IronSoftware.Abstractions.Pdf.IDocumentTextObject
    IronSoftware.Abstractions.Pdf.IBoundedPdfDocumentObject
    IronSoftware.Abstractions.Pdf.IPdfDocumentObject
    IronSoftware.Abstractions.IDocumentObject
    IronSoftware.Abstractions.IBounded
    IronSoftware.ITransformable
    IronSoftware.Abstractions.IColored
    System.ICloneable
    IronSoftware.Abstractions.Absolute.IDocumentPage<>
    IronSoftware.Abstractions.Pdf.IPageContainer

    Inherited members

    ToString()
    Clone()
    TextDirection
    Text
    PdfDocumentId
    ObjNum
    Contents
    Left
    Right
    Top
    Bottom
    Color
    BoundingBox
    Scale
    Translate
    Matrix
    ToBitmap(OcrInput)
    X
    Y
    Location
    ☀
    ☾
    Downloads
    • Download with Nuget
    • Start for Free
    In This Article
    Back to top
    Install with Nuget