API Reference

Class

OfficeDocumentReader

Namespace OfficeIMO.Reader
Assembly OfficeIMO.Reader.Core
Modifiers sealed

Immutable, instance-scoped OfficeIMO document reader suitable for services and concurrent hosts.

Inheritance

  • Object
  • OfficeDocumentReader

Remarks

Handler routing is frozen when the reader is built. Other OfficeDocumentReader instances cannot change this reader's behavior.

Usage

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

Methods

public ReaderChunkHierarchyResult ChunkDocument(OfficeDocumentReadResult document, ReaderHierarchicalChunkingOptions options = null, CancellationToken cancellationToken = null) #
Returns: ReaderChunkHierarchyResult

Token-chunks an already-read rich document and builds its hierarchy.

Parameters

document OfficeIMO.Reader.OfficeDocumentReadResult requiredposition: 0
options OfficeIMO.Reader.ReaderHierarchicalChunkingOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
ConvertToMarkdown 3 overloads
public String ConvertToMarkdown(String path, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: String

Converts a supported file to its portable Markdown representation.

Parameters

path System.String requiredposition: 0
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2

Returns

The emitted Markdown, or an empty string when the reader produced no Markdown.

public String ConvertToMarkdown(Stream stream, String sourceName = null, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: String

Converts a supported stream to its portable Markdown representation. The caller retains ownership of the stream.

Parameters

stream System.IO.Stream requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3

Returns

The emitted Markdown, or an empty string when the reader produced no Markdown.

public String ConvertToMarkdown(Byte[] bytes, String sourceName = null, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: String

Converts supported bytes to their portable Markdown representation.

Parameters

bytes System.Byte[] requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3

Returns

The emitted Markdown, or an empty string when the reader produced no Markdown.

ConvertToMarkdownAsync 3 overloads
public async Task<String> ConvertToMarkdownAsync(String path, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: Task<String>

Asynchronously converts a supported file to its portable Markdown representation.

Parameters

path System.String requiredposition: 0
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2

Returns

The emitted Markdown, or an empty string when the reader produced no Markdown.

public async Task<String> ConvertToMarkdownAsync(Stream stream, String sourceName = null, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: Task<String>

Asynchronously converts a supported stream to its portable Markdown representation. The caller retains ownership of the stream.

Parameters

stream System.IO.Stream requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3

Returns

The emitted Markdown, or an empty string when the reader produced no Markdown.

public async Task<String> ConvertToMarkdownAsync(Byte[] bytes, String sourceName = null, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: Task<String>

Asynchronously converts supported bytes to their portable Markdown representation.

Parameters

bytes System.Byte[] requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3

Returns

The emitted Markdown, or an empty string when the reader produced no Markdown.

Detect 3 overloads
public ReaderDetectionResult Detect(String path, ReaderDetectionOptions options = null) #
Returns: ReaderDetectionResult

Detects a file kind from extension and bounded content evidence using this reader's handlers.

Parameters

path System.String requiredposition: 0
options OfficeIMO.Reader.ReaderDetectionOptions = null optionalposition: 1
public ReaderDetectionResult Detect(Stream stream, String sourceName = null, ReaderDetectionOptions options = null) #
Returns: ReaderDetectionResult

Detects a stream kind from source-name and bounded content evidence using this reader's handlers.

Parameters

stream System.IO.Stream requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderDetectionOptions = null optionalposition: 2
public ReaderDetectionResult Detect(Byte[] bytes, String sourceName = null, ReaderDetectionOptions options = null) #
Returns: ReaderDetectionResult

Detects a byte payload kind from source-name and bounded content evidence using this reader's handlers.

Parameters

bytes System.Byte[] requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderDetectionOptions = null optionalposition: 2
DetectAsync 3 overloads
public Task<ReaderDetectionResult> DetectAsync(String path, ReaderDetectionOptions options = null, CancellationToken cancellationToken = null) #
Returns: Task<ReaderDetectionResult>

Asynchronously detects a file kind from extension and bounded content evidence using this reader's handlers.

Parameters

path System.String requiredposition: 0
options OfficeIMO.Reader.ReaderDetectionOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
public Task<ReaderDetectionResult> DetectAsync(Stream stream, String sourceName = null, ReaderDetectionOptions options = null, CancellationToken cancellationToken = null) #
Returns: Task<ReaderDetectionResult>

Asynchronously detects a stream kind from source-name and bounded content evidence using this reader's handlers.

Parameters

stream System.IO.Stream requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderDetectionOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
public Task<ReaderDetectionResult> DetectAsync(Byte[] bytes, String sourceName = null, ReaderDetectionOptions options = null, CancellationToken cancellationToken = null) #
Returns: Task<ReaderDetectionResult>

Asynchronously detects a byte payload kind from source-name and bounded content evidence using this reader's handlers.

Parameters

bytes System.Byte[] requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderDetectionOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
public ReaderInputKind DetectKind(String path) #
Returns: ReaderInputKind

Detects a reader input kind using this reader's handler configuration.

Parameters

path System.String requiredposition: 0
public IEnumerable<String> EnumerateDocumentPaths(IEnumerable<String> paths, ReaderFolderOptions folderOptions = null, CancellationToken cancellationToken = null) #
Returns: IEnumerable<String>

Expands files and folders using this reader's registered extensions.

Parameters

paths System.Collections.Generic.IEnumerable{System.String} requiredposition: 0
folderOptions OfficeIMO.Reader.ReaderFolderOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
public IReadOnlyList<ReaderTableExportBundle> ExportTables(IEnumerable<ReaderTable> tables, Boolean indentedJson = false, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<ReaderTableExportBundle>

Exports tables as deterministic CSV, Markdown, and JSON payloads.

Parameters

tables System.Collections.Generic.IEnumerable{OfficeIMO.Reader.ReaderTable} requiredposition: 0
indentedJson System.Boolean = false optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
public IReadOnlyList<ReaderVisualExportBundle> ExportVisuals(IEnumerable<ReaderVisual> visuals, Boolean indentedJson = false, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<ReaderVisualExportBundle>

Exports visuals with deterministic payload and JSON sidecars.

Parameters

visuals System.Collections.Generic.IEnumerable{OfficeIMO.Reader.ReaderVisual} requiredposition: 0
indentedJson System.Boolean = false optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
public IReadOnlyList<OfficeDocumentAsset> ExtractAssets(OfficeDocumentReadResult result, Func<OfficeDocumentAsset, Boolean> predicate = null, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<OfficeDocumentAsset>

Extracts assets from an already-read document result.

Parameters

result OfficeIMO.Reader.OfficeDocumentReadResult requiredposition: 0
predicate System.Func{OfficeIMO.Reader.OfficeDocumentAsset,System.Boolean} = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
public IReadOnlyList<ReaderTable> ExtractMarkdownTables(String markdown, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<ReaderTable>

Extracts Markdown tables using the configured reader parsing contract.

Parameters

markdown System.String requiredposition: 0
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
public OfficeDocumentStructuredExtractionResult ExtractStructured(OfficeDocumentReadResult document, OfficeDocumentStructuredExtractionOptions options = null, CancellationToken cancellationToken = null) #
Returns: OfficeDocumentStructuredExtractionResult

Extracts a bounded structured view from an already-read document.

Parameters

document OfficeIMO.Reader.OfficeDocumentReadResult requiredposition: 0
options OfficeIMO.Reader.OfficeDocumentStructuredExtractionOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
public IReadOnlyList<ReaderTable> ExtractTables(IEnumerable<ReaderChunk> chunks, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<ReaderTable>

Extracts tables from already-read chunks.

Parameters

chunks System.Collections.Generic.IEnumerable{OfficeIMO.Reader.ReaderChunk} requiredposition: 0
cancellationToken System.Threading.CancellationToken = null optionalposition: 1
public IReadOnlyList<ReaderVisual> ExtractVisuals(IEnumerable<ReaderChunk> chunks, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<ReaderVisual>

Extracts visuals from already-read chunks.

Parameters

chunks System.Collections.Generic.IEnumerable{OfficeIMO.Reader.ReaderChunk} requiredposition: 0
cancellationToken System.Threading.CancellationToken = null optionalposition: 1
public IReadOnlyList<ReaderHandlerCapability> GetCapabilities() #
Returns: IReadOnlyList<ReaderHandlerCapability>

Gets the capabilities configured for this reader.

public ReaderCapabilityManifest GetCapabilityManifest() #
Returns: ReaderCapabilityManifest

Gets a machine-readable capability manifest for this reader.

public String GetCapabilityManifestJson(Boolean indented = false) #
Returns: String

Gets the capability manifest for this reader as JSON.

Parameters

indented System.Boolean = false optionalposition: 0
public OfficeDocumentProcessingResult ProcessDocument(OfficeDocumentReadResult document, CancellationToken cancellationToken = null) #
Returns: OfficeDocumentProcessingResult

Processes an already-read document through this reader's frozen pipeline.

Parameters

document OfficeIMO.Reader.OfficeDocumentReadResult requiredposition: 0
cancellationToken System.Threading.CancellationToken = null optionalposition: 1
public Task<OfficeDocumentProcessingResult> ProcessDocumentAsync(OfficeDocumentReadResult document, CancellationToken cancellationToken = null) #
Returns: Task<OfficeDocumentProcessingResult>

Processes an already-read document asynchronously through this reader's frozen pipeline.

Parameters

document OfficeIMO.Reader.OfficeDocumentReadResult requiredposition: 0
cancellationToken System.Threading.CancellationToken = null optionalposition: 1
Read 3 overloads
public IEnumerable<ReaderChunk> Read(String path, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: IEnumerable<ReaderChunk>

Reads a supported file using this reader's frozen handler configuration.

Parameters

path System.String requiredposition: 0
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
public IEnumerable<ReaderChunk> Read(Stream stream, String sourceName = null, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: IEnumerable<ReaderChunk>

Reads a supported stream using this reader's frozen handler configuration.

Parameters

stream System.IO.Stream requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
public IEnumerable<ReaderChunk> Read(Byte[] bytes, String sourceName = null, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: IEnumerable<ReaderChunk>

Reads supported bytes using this reader's frozen handler configuration.

Parameters

bytes System.Byte[] requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
ReadAssets 3 overloads
public IReadOnlyList<OfficeDocumentAsset> ReadAssets(String path, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<OfficeDocumentAsset>

Reads a file and returns assets attached to its rich document result.

Parameters

path System.String requiredposition: 0
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
public IReadOnlyList<OfficeDocumentAsset> ReadAssets(Stream stream, String sourceName = null, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<OfficeDocumentAsset>

Reads a caller-owned stream and returns assets attached to its rich document result.

Parameters

stream System.IO.Stream requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
public IReadOnlyList<OfficeDocumentAsset> ReadAssets(Byte[] bytes, String sourceName = null, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<OfficeDocumentAsset>

Reads bytes and returns assets attached to their rich document result.

Parameters

bytes System.Byte[] requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
ReadAsync 3 overloads
public Task<IReadOnlyList<ReaderChunk>> ReadAsync(String path, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: Task<IReadOnlyList<ReaderChunk>>

Asynchronously reads a file into normalized chunks.

Parameters

path System.String requiredposition: 0
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
public Task<IReadOnlyList<ReaderChunk>> ReadAsync(Stream stream, String sourceName = null, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: Task<IReadOnlyList<ReaderChunk>>

Asynchronously reads a stream into normalized chunks. The caller retains ownership of the stream.

Parameters

stream System.IO.Stream requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
public Task<IReadOnlyList<ReaderChunk>> ReadAsync(Byte[] bytes, String sourceName = null, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: Task<IReadOnlyList<ReaderChunk>>

Asynchronously reads bytes into normalized chunks.

Parameters

bytes System.Byte[] requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
ReadDocument 3 overloads
public OfficeDocumentReadResult ReadDocument(String path, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: OfficeDocumentReadResult

Reads a file into the shared rich document envelope.

Parameters

path System.String requiredposition: 0
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
public OfficeDocumentReadResult ReadDocument(Stream stream, String sourceName = null, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: OfficeDocumentReadResult

Reads a stream into the shared rich document envelope.

Parameters

stream System.IO.Stream requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
public OfficeDocumentReadResult ReadDocument(Byte[] bytes, String sourceName = null, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: OfficeDocumentReadResult

Reads bytes into the shared rich document envelope.

Parameters

bytes System.Byte[] requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
ReadDocumentAsync 3 overloads
public Task<OfficeDocumentReadResult> ReadDocumentAsync(String path, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: Task<OfficeDocumentReadResult>

Asynchronously reads a file into the shared rich document envelope.

Parameters

path System.String requiredposition: 0
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
public Task<OfficeDocumentReadResult> ReadDocumentAsync(Stream stream, String sourceName = null, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: Task<OfficeDocumentReadResult>

Asynchronously reads a stream into the shared rich document envelope. The caller retains ownership of the stream.

Parameters

stream System.IO.Stream requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
public Task<OfficeDocumentReadResult> ReadDocumentAsync(Byte[] bytes, String sourceName = null, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: Task<OfficeDocumentReadResult>

Asynchronously reads bytes into the shared rich document envelope.

Parameters

bytes System.Byte[] requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
ReadDocumentJson 3 overloads
public String ReadDocumentJson(String path, ReaderOptions options = null, Boolean indented = false, CancellationToken cancellationToken = null) #
Returns: String

Reads a file into the shared rich document JSON envelope.

Parameters

path System.String requiredposition: 0
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 1
indented System.Boolean = false optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
public String ReadDocumentJson(Stream stream, String sourceName = null, ReaderOptions options = null, Boolean indented = false, CancellationToken cancellationToken = null) #
Returns: String

Reads a stream into the shared rich document JSON envelope.

Parameters

stream System.IO.Stream requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
indented System.Boolean = false optionalposition: 3
cancellationToken System.Threading.CancellationToken = null optionalposition: 4
public String ReadDocumentJson(Byte[] bytes, String sourceName = null, ReaderOptions options = null, Boolean indented = false, CancellationToken cancellationToken = null) #
Returns: String

Reads bytes into the shared rich document JSON envelope.

Parameters

bytes System.Byte[] requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
indented System.Boolean = false optionalposition: 3
cancellationToken System.Threading.CancellationToken = null optionalposition: 4
public Task ReadDocumentsAsCompletedAsync(IEnumerable<String> paths, Action<ReaderDocumentReadOutcome> onCompleted, ReaderOptions options = null, ReaderBatchOptions batchOptions = null, CancellationToken cancellationToken = null) #
Returns: Task

Asynchronously reads a bounded set of files and reports each resilient outcome without retaining completed document results for the lifetime of the whole batch.

Parameters

paths System.Collections.Generic.IEnumerable{System.String} requiredposition: 0
onCompleted System.Action{OfficeIMO.Reader.ReaderDocumentReadOutcome} requiredposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
batchOptions OfficeIMO.Reader.ReaderBatchOptions = null optionalposition: 3
cancellationToken System.Threading.CancellationToken = null optionalposition: 4
public Task<IReadOnlyList<OfficeDocumentReadResult>> ReadDocumentsAsync(IEnumerable<String> paths, ReaderOptions options = null, ReaderBatchOptions batchOptions = null, CancellationToken cancellationToken = null) #
Returns: Task<IReadOnlyList<OfficeDocumentReadResult>>

Asynchronously reads a bounded set of files. Results retain the input path order.

Parameters

paths System.Collections.Generic.IEnumerable{System.String} requiredposition: 0
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 1
batchOptions OfficeIMO.Reader.ReaderBatchOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
public Task<IReadOnlyList<ReaderDocumentReadOutcome>> ReadDocumentsDetailedAsync(IEnumerable<String> paths, ReaderOptions options = null, ReaderBatchOptions batchOptions = null, Action<ReaderDocumentReadOutcome> onCompleted = null, CancellationToken cancellationToken = null) #
Returns: Task<IReadOnlyList<ReaderDocumentReadOutcome>>

Asynchronously reads a bounded set of files and captures a success or error outcome for every path.

Parameters

paths System.Collections.Generic.IEnumerable{System.String} requiredposition: 0
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 1
batchOptions OfficeIMO.Reader.ReaderBatchOptions = null optionalposition: 2
onCompleted System.Action{OfficeIMO.Reader.ReaderDocumentReadOutcome} = null optionalposition: 3
cancellationToken System.Threading.CancellationToken = null optionalposition: 4
public IEnumerable<ReaderChunk> ReadFolder(String folderPath, ReaderFolderOptions folderOptions = null, ReaderOptions options = null, Action<ReaderProgress> onProgress = null, CancellationToken cancellationToken = null) #
Returns: IEnumerable<ReaderChunk>

Enumerates a folder using this reader's registered extensions and handlers.

Parameters

folderPath System.String requiredposition: 0
folderOptions OfficeIMO.Reader.ReaderFolderOptions = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
onProgress System.Action{OfficeIMO.Reader.ReaderProgress} = null optionalposition: 3
cancellationToken System.Threading.CancellationToken = null optionalposition: 4
public ReaderIngestResult ReadFolderDetailed(String folderPath, ReaderFolderOptions folderOptions = null, ReaderOptions options = null, Boolean includeChunks = true, Action<ReaderProgress> onProgress = null, CancellationToken cancellationToken = null) #
Returns: ReaderIngestResult

Reads a folder and returns materialized ingestion details.

Parameters

folderPath System.String requiredposition: 0
folderOptions OfficeIMO.Reader.ReaderFolderOptions = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
includeChunks System.Boolean = true optionalposition: 3
onProgress System.Action{OfficeIMO.Reader.ReaderProgress} = null optionalposition: 4
cancellationToken System.Threading.CancellationToken = null optionalposition: 5
public IEnumerable<ReaderSourceDocument> ReadFolderDocuments(String folderPath, ReaderFolderOptions folderOptions = null, ReaderOptions options = null, Action<ReaderProgress> onProgress = null, CancellationToken cancellationToken = null) #
Returns: IEnumerable<ReaderSourceDocument>

Enumerates a folder as one source-level payload per file.

Parameters

folderPath System.String requiredposition: 0
folderOptions OfficeIMO.Reader.ReaderFolderOptions = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
onProgress System.Action{OfficeIMO.Reader.ReaderProgress} = null optionalposition: 3
cancellationToken System.Threading.CancellationToken = null optionalposition: 4
ReadHierarchical 3 overloads
public ReaderChunkHierarchyResult ReadHierarchical(String path, ReaderOptions readerOptions = null, ReaderHierarchicalChunkingOptions chunkingOptions = null, CancellationToken cancellationToken = null) #
Returns: ReaderChunkHierarchyResult

Reads a file through configured processors and returns hierarchical chunks.

Parameters

path System.String requiredposition: 0
readerOptions OfficeIMO.Reader.ReaderOptions = null optionalposition: 1
chunkingOptions OfficeIMO.Reader.ReaderHierarchicalChunkingOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
public ReaderChunkHierarchyResult ReadHierarchical(Stream stream, String sourceName = null, ReaderOptions readerOptions = null, ReaderHierarchicalChunkingOptions chunkingOptions = null, CancellationToken cancellationToken = null) #
Returns: ReaderChunkHierarchyResult

Reads a stream through configured processors and returns hierarchical chunks.

Parameters

stream System.IO.Stream requiredposition: 0
sourceName System.String = null optionalposition: 1
readerOptions OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
chunkingOptions OfficeIMO.Reader.ReaderHierarchicalChunkingOptions = null optionalposition: 3
cancellationToken System.Threading.CancellationToken = null optionalposition: 4
public ReaderChunkHierarchyResult ReadHierarchical(Byte[] bytes, String sourceName = null, ReaderOptions readerOptions = null, ReaderHierarchicalChunkingOptions chunkingOptions = null, CancellationToken cancellationToken = null) #
Returns: ReaderChunkHierarchyResult

Reads bytes through configured processors and returns hierarchical chunks.

Parameters

bytes System.Byte[] requiredposition: 0
sourceName System.String = null optionalposition: 1
readerOptions OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
chunkingOptions OfficeIMO.Reader.ReaderHierarchicalChunkingOptions = null optionalposition: 3
cancellationToken System.Threading.CancellationToken = null optionalposition: 4
ReadHierarchicalAsync 3 overloads
public async Task<ReaderChunkHierarchyResult> ReadHierarchicalAsync(String path, ReaderOptions readerOptions = null, ReaderHierarchicalChunkingOptions chunkingOptions = null, CancellationToken cancellationToken = null) #
Returns: Task<ReaderChunkHierarchyResult>

Asynchronously reads a file through configured processors and returns hierarchical chunks.

Parameters

path System.String requiredposition: 0
readerOptions OfficeIMO.Reader.ReaderOptions = null optionalposition: 1
chunkingOptions OfficeIMO.Reader.ReaderHierarchicalChunkingOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
public async Task<ReaderChunkHierarchyResult> ReadHierarchicalAsync(Stream stream, String sourceName = null, ReaderOptions readerOptions = null, ReaderHierarchicalChunkingOptions chunkingOptions = null, CancellationToken cancellationToken = null) #
Returns: Task<ReaderChunkHierarchyResult>

Asynchronously reads a stream through configured processors and returns hierarchical chunks.

Parameters

stream System.IO.Stream requiredposition: 0
sourceName System.String = null optionalposition: 1
readerOptions OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
chunkingOptions OfficeIMO.Reader.ReaderHierarchicalChunkingOptions = null optionalposition: 3
cancellationToken System.Threading.CancellationToken = null optionalposition: 4
public async Task<ReaderChunkHierarchyResult> ReadHierarchicalAsync(Byte[] bytes, String sourceName = null, ReaderOptions readerOptions = null, ReaderHierarchicalChunkingOptions chunkingOptions = null, CancellationToken cancellationToken = null) #
Returns: Task<ReaderChunkHierarchyResult>

Asynchronously reads bytes through configured processors and returns hierarchical chunks.

Parameters

bytes System.Byte[] requiredposition: 0
sourceName System.String = null optionalposition: 1
readerOptions OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
chunkingOptions OfficeIMO.Reader.ReaderHierarchicalChunkingOptions = null optionalposition: 3
cancellationToken System.Threading.CancellationToken = null optionalposition: 4
public ReaderPathDocumentResult ReadPathDocumentsDetailed(String path, ReaderFolderOptions folderOptions = null, ReaderOptions options = null, Boolean includeDocumentChunks = true, Nullable<Int32> maxReturnedChunks = null, Action<ReaderProgress> onProgress = null, CancellationToken cancellationToken = null) #
Returns: ReaderPathDocumentResult

Reads a file or folder and returns source-level document payloads with optional chunk shaping.

Parameters

path System.String requiredposition: 0
folderOptions OfficeIMO.Reader.ReaderFolderOptions = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
includeDocumentChunks System.Boolean = true optionalposition: 3
maxReturnedChunks System.Nullable{System.Int32} = null optionalposition: 4
onProgress System.Action{OfficeIMO.Reader.ReaderProgress} = null optionalposition: 5
cancellationToken System.Threading.CancellationToken = null optionalposition: 6
ReadStructured 3 overloads
public OfficeDocumentStructuredExtractionResult ReadStructured(String path, ReaderOptions readerOptions = null, OfficeDocumentStructuredExtractionOptions structuredOptions = null, CancellationToken cancellationToken = null) #
Returns: OfficeDocumentStructuredExtractionResult

Reads a file through this reader's processors and extracts a bounded structured view.

Parameters

path System.String requiredposition: 0
readerOptions OfficeIMO.Reader.ReaderOptions = null optionalposition: 1
structuredOptions OfficeIMO.Reader.OfficeDocumentStructuredExtractionOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
public OfficeDocumentStructuredExtractionResult ReadStructured(Stream stream, String sourceName = null, ReaderOptions readerOptions = null, OfficeDocumentStructuredExtractionOptions structuredOptions = null, CancellationToken cancellationToken = null) #
Returns: OfficeDocumentStructuredExtractionResult

Reads a stream through this reader's processors and extracts a bounded structured view.

Parameters

stream System.IO.Stream requiredposition: 0
sourceName System.String = null optionalposition: 1
readerOptions OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
structuredOptions OfficeIMO.Reader.OfficeDocumentStructuredExtractionOptions = null optionalposition: 3
cancellationToken System.Threading.CancellationToken = null optionalposition: 4
public OfficeDocumentStructuredExtractionResult ReadStructured(Byte[] bytes, String sourceName = null, ReaderOptions readerOptions = null, OfficeDocumentStructuredExtractionOptions structuredOptions = null, CancellationToken cancellationToken = null) #
Returns: OfficeDocumentStructuredExtractionResult

Reads bytes through this reader's processors and extracts a bounded structured view.

Parameters

bytes System.Byte[] requiredposition: 0
sourceName System.String = null optionalposition: 1
readerOptions OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
structuredOptions OfficeIMO.Reader.OfficeDocumentStructuredExtractionOptions = null optionalposition: 3
cancellationToken System.Threading.CancellationToken = null optionalposition: 4
ReadStructuredAsync 3 overloads
public async Task<OfficeDocumentStructuredExtractionResult> ReadStructuredAsync(String path, ReaderOptions readerOptions = null, OfficeDocumentStructuredExtractionOptions structuredOptions = null, CancellationToken cancellationToken = null) #
Returns: Task<OfficeDocumentStructuredExtractionResult>

Asynchronously reads a file through this reader's processors and extracts a bounded structured view.

Parameters

path System.String requiredposition: 0
readerOptions OfficeIMO.Reader.ReaderOptions = null optionalposition: 1
structuredOptions OfficeIMO.Reader.OfficeDocumentStructuredExtractionOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
public async Task<OfficeDocumentStructuredExtractionResult> ReadStructuredAsync(Stream stream, String sourceName = null, ReaderOptions readerOptions = null, OfficeDocumentStructuredExtractionOptions structuredOptions = null, CancellationToken cancellationToken = null) #
Returns: Task<OfficeDocumentStructuredExtractionResult>

Asynchronously reads a stream through this reader's processors and extracts a bounded structured view.

Parameters

stream System.IO.Stream requiredposition: 0
sourceName System.String = null optionalposition: 1
readerOptions OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
structuredOptions OfficeIMO.Reader.OfficeDocumentStructuredExtractionOptions = null optionalposition: 3
cancellationToken System.Threading.CancellationToken = null optionalposition: 4
public async Task<OfficeDocumentStructuredExtractionResult> ReadStructuredAsync(Byte[] bytes, String sourceName = null, ReaderOptions readerOptions = null, OfficeDocumentStructuredExtractionOptions structuredOptions = null, CancellationToken cancellationToken = null) #
Returns: Task<OfficeDocumentStructuredExtractionResult>

Asynchronously reads bytes through this reader's processors and extracts a bounded structured view.

Parameters

bytes System.Byte[] requiredposition: 0
sourceName System.String = null optionalposition: 1
readerOptions OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
structuredOptions OfficeIMO.Reader.OfficeDocumentStructuredExtractionOptions = null optionalposition: 3
cancellationToken System.Threading.CancellationToken = null optionalposition: 4
ReadTableExports 3 overloads
public IReadOnlyList<ReaderTableExportBundle> ReadTableExports(String path, ReaderOptions options = null, Boolean indentedJson = false, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<ReaderTableExportBundle>

Reads a file and exports its tables as deterministic CSV, Markdown, and JSON payloads.

Parameters

path System.String requiredposition: 0
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 1
indentedJson System.Boolean = false optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
public IReadOnlyList<ReaderTableExportBundle> ReadTableExports(Stream stream, String sourceName = null, ReaderOptions options = null, Boolean indentedJson = false, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<ReaderTableExportBundle>

Reads a caller-owned stream and exports its tables as deterministic CSV, Markdown, and JSON payloads.

Parameters

stream System.IO.Stream requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
indentedJson System.Boolean = false optionalposition: 3
cancellationToken System.Threading.CancellationToken = null optionalposition: 4
public IReadOnlyList<ReaderTableExportBundle> ReadTableExports(Byte[] bytes, String sourceName = null, ReaderOptions options = null, Boolean indentedJson = false, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<ReaderTableExportBundle>

Reads bytes and exports their tables as deterministic CSV, Markdown, and JSON payloads.

Parameters

bytes System.Byte[] requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
indentedJson System.Boolean = false optionalposition: 3
cancellationToken System.Threading.CancellationToken = null optionalposition: 4
ReadTables 3 overloads
public IReadOnlyList<ReaderTable> ReadTables(String path, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<ReaderTable>

Reads a file and returns discovered tables in source order.

Parameters

path System.String requiredposition: 0
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
public IReadOnlyList<ReaderTable> ReadTables(Stream stream, String sourceName = null, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<ReaderTable>

Reads a caller-owned stream and returns discovered tables in source order.

Parameters

stream System.IO.Stream requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
public IReadOnlyList<ReaderTable> ReadTables(Byte[] bytes, String sourceName = null, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<ReaderTable>

Reads bytes and returns discovered tables in source order.

Parameters

bytes System.Byte[] requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
ReadVisualExports 3 overloads
public IReadOnlyList<ReaderVisualExportBundle> ReadVisualExports(String path, ReaderOptions options = null, Boolean indentedJson = false, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<ReaderVisualExportBundle>

Reads a file and exports its visuals with deterministic payload and JSON sidecars.

Parameters

path System.String requiredposition: 0
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 1
indentedJson System.Boolean = false optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
public IReadOnlyList<ReaderVisualExportBundle> ReadVisualExports(Stream stream, String sourceName = null, ReaderOptions options = null, Boolean indentedJson = false, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<ReaderVisualExportBundle>

Reads a caller-owned stream and exports its visuals with deterministic payload and JSON sidecars.

Parameters

stream System.IO.Stream requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
indentedJson System.Boolean = false optionalposition: 3
cancellationToken System.Threading.CancellationToken = null optionalposition: 4
public IReadOnlyList<ReaderVisualExportBundle> ReadVisualExports(Byte[] bytes, String sourceName = null, ReaderOptions options = null, Boolean indentedJson = false, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<ReaderVisualExportBundle>

Reads bytes and exports their visuals with deterministic payload and JSON sidecars.

Parameters

bytes System.Byte[] requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
indentedJson System.Boolean = false optionalposition: 3
cancellationToken System.Threading.CancellationToken = null optionalposition: 4
ReadVisuals 3 overloads
public IReadOnlyList<ReaderVisual> ReadVisuals(String path, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<ReaderVisual>

Reads a file and returns visual payloads in source order.

Parameters

path System.String requiredposition: 0
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
public IReadOnlyList<ReaderVisual> ReadVisuals(Stream stream, String sourceName = null, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<ReaderVisual>

Reads a caller-owned stream and returns visual payloads in source order.

Parameters

stream System.IO.Stream requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3
public IReadOnlyList<ReaderVisual> ReadVisuals(Byte[] bytes, String sourceName = null, ReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: IReadOnlyList<ReaderVisual>

Reads bytes and returns visual payloads in source order.

Parameters

bytes System.Byte[] requiredposition: 0
sourceName System.String = null optionalposition: 1
options OfficeIMO.Reader.ReaderOptions = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = null optionalposition: 3

Properties

public static OfficeDocumentReader Default { get; } #

Gets an immutable reader with no configured format handlers.

public Int32 MaxConcurrentReads { get; } #

Gets the maximum number of asynchronous operations allowed in flight for this reader.

public OfficeDocumentProcessorPipeline ProcessorPipeline { get; } #

Gets this reader's immutable ordered processor pipeline.

public OfficeDocumentProcessorFailureBehavior ProcessorFailureBehavior { get; } #

Gets the configured processor failure behavior.