Skip to main content

Search OfficeIMO

Enter a topic, API type, or PowerShell command.

Documentation Search all OfficeIMO/

API Reference

Class

PdfOcrMergeOptions

Namespace OfficeIMO.Pdf.Ocr
Assembly OfficeIMO.Pdf.Ocr
Source revision dce3df7a1b5d with working tree changes
Modifiers sealed

Controls canonical parsing, OCR rendering, confidence filtering, and native-text overlap removal.

Inheritance

  • Object
  • PdfOcrMergeOptions

Usage

Explore 11 API references to this type

This type appears in these public API surfaces even when no hand-authored example is attached directly to the page.

Returned or exposed by 1

Constructors

public PdfOcrMergeOptions() #

Methods

public PdfOcrMergeOptions Clone() #
Returns: PdfOcrMergeOptions

Creates an independent option snapshot.

public Int32[] GetSelectedPages(Int32 pageCount) #
Returns: Int32[]

Resolves the page selection and optional region restriction against an actual document page count.

Parameters

pageCount System.Int32 requiredposition: 0

Properties

public PdfReadOptions ReadOptions { get; set; } #

Canonical semantic-read settings, including page selection, layout, stage customization, and understanding budgets. OCR evidence is processed by this same read pipeline.

public Boolean ReconstructLayout { get; set; } #

Rebuilds OCR lines, columns, tables, and reading order from accepted word geometry using the canonical understanding stages. False preserves provider line hierarchy and order. Use true when a provider joins separate columns into one line. Original word geometry is retained.

public String? Language { get; set; } #

Requested language tag or provider-specific expression forwarded to the OCR engine.

public String? SourceName { get; set; } #

Optional source path or logical name attached to OCR requests.

public String? SourceId { get; set; } #

Optional stable source identifier attached to OCR requests.

public Boolean UseLineSpansWhenWordsUnavailable { get; set; } #

Uses line spans when the engine does not return word spans.

public Double ConfidenceWhenUnavailable { get; set; } #

Confidence used when neither a span nor the overall result reports one. Defaults to zero.

public IReadOnlyDictionary<String, String> ProviderOptions { get; set; } #

Provider-specific scalar options forwarded to the OCR engine.

public Double Dpi { get; set; } #

OCR render DPI.

public IOfficeRasterImageCodec? ImageCodec { get; set; } #

Optional shared raster decoder for source encodings such as JPEG 2000.

public OfficeScanProcessingOptions? ScanProcessing { get; set; } #

Optional shared scan-cleanup settings. Null preserves the rendered samples.

public OfficeScanPerspectiveOptions? Perspective { get; set; } #

Optional explicit perspective corners, relative to each selected region or full page. Applied before affine cleanup.

public IReadOnlyList<PdfOcrPageRegion> Regions { get; set; } #

Optional OCR rectangles, at most one per page. A nonempty list sends only these pages and cropped pixels to the provider. Every region page must also belong to ReadOptions.PageSelection when it is supplied.

public Boolean DetectOrientation { get; set; } #

Requests provider orientation evidence before cleanup. Unsupported or inconclusive detection retains the source orientation.

public Double MinimumOrientationConfidence { get; set; } #

Minimum normalized provider orientation confidence required to rotate the OCR image.

public Double MinimumConfidence { get; set; } #

Minimum accepted provider confidence from 0 through 1.

public Double NativeTextOverlapThreshold { get; set; } #

Overlap ratio at which OCR words duplicating native text are removed.

public Int32 MaxPages { get; set; } #

Maximum pages sent to the provider.

public TimeSpan ProviderTimeout { get; set; } #

Maximum total duration for one provider call, including exclusive-engine wait time. Defaults to two minutes.

public Int64 MaxPixelsPerPage { get; set; } #

Maximum pixels rendered per page.

public Int32 MaxConcurrentPages { get; set; } #

Maximum page requests in flight. Providers without concurrent-request support always run one at a time.

public Int64 MaxRenderedBytesPerPage { get; set; } #

Maximum encoded PNG bytes for one OCR request.

public Int32 MaxOcrSpansPerPage { get; set; } #

Maximum detailed spans inspected from the provider for one page.

public Int32 MaxOcrWordsPerPage { get; set; } #

Maximum OCR words accepted from the provider for one page.

public Int32 MaxOcrTextCharactersPerPage { get; set; } #

Maximum aggregate selected OCR span characters inspected for one page.

public Int32 MaxOcrHierarchyCharactersPerPage { get; set; } #

Maximum aggregate raw block, paragraph, and line identifier characters inspected for one page.

public Int32 MaxDiagnosticsPerPage { get; set; } #

Maximum provider diagnostics accepted for one page.

public Int32 MaxDiagnosticCharactersPerPage { get; set; } #

Maximum aggregate provider diagnostic characters accepted for one page.

public Int32 MaxProviderMetadataCharactersPerPage { get; set; } #

Maximum aggregate provider, model, and language metadata characters accepted for one page.

public Int32 MaxNativeTextBlocksPerPage { get; set; } #

Maximum logical native text blocks and raw native spans considered for OCR overlap on one page.

public Int32 MaxNativeTextCharactersPerPage { get; set; } #

Maximum aggregate native span characters inspected for OCR overlap on one page, including concealed spans.

public Int64 MaxNativeTextOverlapComparisonsPerPage { get; set; } #

Maximum native-text overlap comparisons performed for one page.

public Int32 MaxNativeTextOverlapIntersectionsPerWord { get; set; } #

Maximum overlapping native-text fragments retained while testing one OCR word.

public Int32 MaxMergedTextCharactersPerPage { get; set; } #

Maximum characters retained in one merged native/OCR text result.