# PdfOcrPage class

> The result for one page. Coordinates are in PDF user space: points, y up, before /Rotate.

Namespace: [PdfNetStack.Ocr](https://www.jadev-corp.com/api/pdfnetstack-ocr/)  
Assembly: PdfNetStack.Ocr.dll  
Package: `PdfNetStack.Ocr`

The result for one page. Coordinates are in PDF user space: points, y up, before /Rotate.

```csharp
public sealed record PdfOcrPage : IEquatable<PdfOcrPage>
```

**Inheritance**

[object](https://learn.microsoft.com/dotnet/api/system.object) ← 
[PdfOcrPage](https://www.jadev-corp.com/api/pdfnetstack-ocr/pdfocrpage/)

**Implements**

[IEquatable&lt;PdfOcrPage\>](https://learn.microsoft.com/dotnet/api/system.iequatable\-1)

## Constructors

### <a id="PdfNetStack_Ocr_PdfOcrPage__ctor_System_Int32_PdfNetStack_Ocr_PdfOcrPageStatus_System_String_System_Collections_Generic_IReadOnlyList_PdfNetStack_Ocr_OcrLine__"></a> PdfOcrPage\(int, PdfOcrPageStatus, string?, IReadOnlyList&lt;OcrLine\>\)

The result for one page. Coordinates are in PDF user space: points, y up, before /Rotate.

```csharp
public PdfOcrPage(int Index, PdfOcrPageStatus Status, string? Reason, IReadOnlyList<OcrLine> Lines)
```

#### Parameters

`Index` [int](https://learn.microsoft.com/dotnet/api/system.int32)

Zero based page index.

`Status` [PdfOcrPageStatus](https://www.jadev-corp.com/api/pdfnetstack-ocr/pdfocrpagestatus/)

What happened.

`Reason` [string](https://learn.microsoft.com/dotnet/api/system.string)?

Why a page was skipped or failed, or null.

`Lines` [IReadOnlyList](https://learn.microsoft.com/dotnet/api/system.collections.generic.ireadonlylist\-1)<[OcrLine](https://www.jadev-corp.com/api/pdfnetstack-ocr/ocrline/)\>

The text found, in reading order.

## Properties

### <a id="PdfNetStack_Ocr_PdfOcrPage_Index"></a> Index

Zero based page index.

```csharp
public int Index { get; init; }
```

#### Property Value

 [int](https://learn.microsoft.com/dotnet/api/system.int32)

### <a id="PdfNetStack_Ocr_PdfOcrPage_Lines"></a> Lines

The text found, in reading order.

```csharp
public IReadOnlyList<OcrLine> Lines { get; init; }
```

#### Property Value

 [IReadOnlyList](https://learn.microsoft.com/dotnet/api/system.collections.generic.ireadonlylist\-1)<[OcrLine](https://www.jadev-corp.com/api/pdfnetstack-ocr/ocrline/)\>

### <a id="PdfNetStack_Ocr_PdfOcrPage_Orientation"></a> Orientation

How far the text on the scan was found turned clockwise, in degrees, beyond what the page's
/Rotate and the scan's placement say: 0, 90, 180 or 270. The page was read turned back.
See [DetectOrientation](https://www.jadev-corp.com/api/pdfnetstack-ocr/pdfocroptions/#PdfNetStack_Ocr_PdfOcrOptions_DetectOrientation).

```csharp
public int Orientation { get; init; }
```

#### Property Value

 [int](https://learn.microsoft.com/dotnet/api/system.int32)

### <a id="PdfNetStack_Ocr_PdfOcrPage_Reason"></a> Reason

Why a page was skipped or failed, or null.

```csharp
public string? Reason { get; init; }
```

#### Property Value

 [string](https://learn.microsoft.com/dotnet/api/system.string)?

### <a id="PdfNetStack_Ocr_PdfOcrPage_Status"></a> Status

What happened.

```csharp
public PdfOcrPageStatus Status { get; init; }
```

#### Property Value

 [PdfOcrPageStatus](https://www.jadev-corp.com/api/pdfnetstack-ocr/pdfocrpagestatus/)

### <a id="PdfNetStack_Ocr_PdfOcrPage_Text"></a> Text

The page's text, lines joined with newlines.

```csharp
public string Text { get; }
```

#### Property Value

 [string](https://learn.microsoft.com/dotnet/api/system.string)

## Used in

- [Make scanned PDFs searchable with OCR in C#](https://www.jadev-corp.com/guides/ocr/)

Source: https://www.jadev-corp.com/pdfnetstack/api/pdfnetstack-ocr/pdfocrpage/
