API Reference
PdfLogicalDocument
First-party logical read model for a parser-supported PDF.
Inheritance
- Object
- PdfLogicalDocument
Usage
This type appears in these public API surfaces even when no hand-authored example is attached directly to the page.
Returned or exposed by
- Property PdfConversionProofReport.LogicalDocument
- Method PdfDocumentReader.Logical
- Method PdfDocumentReader.Logical
- Method PdfDocumentReader.Logical
- Method PdfDocumentReader.Logical
- Method PdfDocumentReader.TryLogical
- Method PdfDocumentReader.TryLogical
- Method PdfDocumentReader.TryLogical
- Method PdfDocumentReader.TryLogical
- Method PdfLogicalDocument.From
- Method PdfLogicalDocument.FromPageRanges
- Method PdfLogicalDocument.FromPageRanges
- Method PdfLogicalDocument.Load
- Method PdfLogicalDocument.Load
- Method PdfLogicalDocument.Load
- Method PdfLogicalDocument.Load
- Method PdfLogicalDocument.LoadPageRanges
- Method PdfLogicalDocument.LoadPageRanges
- Method PdfLogicalDocument.LoadPageRanges
- Method PdfLogicalDocument.LoadPageRanges
- Method PdfLogicalDocument.LoadPageRanges
- Method PdfLogicalDocument.LoadPageRanges
- Property PdfOcrMergeResult.NativeDocument
Accepted by parameters
- Extension method PdfLogicalDocument.ExportStructured
- Extension method PdfLogicalDocument.ToHtmlTables
- Extension method PdfLogicalDocument.ToMarkdown
- Extension method PdfLogicalDocument.ToMarkdownTables
- Extension method PdfLogicalDocument.ToPageXmlDocuments
- Method PdfLogicalDocumentStructuredExportExtensions.ExportStructured
- Method PdfLogicalDocumentStructuredExportExtensions.ToPageXmlDocuments
- Method PdfLogicalMarkdownExtensions.ToMarkdown
- Method PdfLogicalTableAnalysis.AnalyzeExtractionScope
- Method PdfLogicalTableAnalysis.ExtractTables
- Method PdfLogicalTableTextExportExtensions.ToHtmlTables
- Method PdfLogicalTableTextExportExtensions.ToMarkdownTables
Methods
public static PdfLogicalDocument From(PdfReadDocument document, PdfTextLayoutOptions options = null) #PdfLogicalDocumentBuilds the logical read model from an already parsed PDF document.
Parameters
- document OfficeIMO.Pdf.PdfReadDocument
- options OfficeIMO.Pdf.PdfTextLayoutOptions = null
public static PdfLogicalDocument FromPageRanges(PdfReadDocument document, params PdfPageRange[] pageRanges) #PdfLogicalDocumentBuilds a logical read model for selected source page ranges from an already parsed PDF document, preserving caller order and overlaps.
Parameters
- document OfficeIMO.Pdf.PdfReadDocument
- pageRanges OfficeIMO.Pdf.PdfPageRange[]
public static PdfLogicalDocument FromPageRanges(PdfReadDocument document, PdfTextLayoutOptions options, params PdfPageRange[] pageRanges) #PdfLogicalDocumentBuilds a logical read model for selected source page ranges from an already parsed PDF document, preserving caller order and overlaps.
Parameters
- document OfficeIMO.Pdf.PdfReadDocument
- options OfficeIMO.Pdf.PdfTextLayoutOptions
- pageRanges OfficeIMO.Pdf.PdfPageRange[]
public IReadOnlyList<PdfAttachmentInfo> GetAttachmentsByFileName(String fileName) #IReadOnlyList<PdfAttachmentInfo>Returns attachments with a matching file specification file name.
Parameters
- fileName System.String
public IReadOnlyList<PdfAttachmentInfo> GetAttachmentsByRelationship(PdfAssociatedFileRelationship relationship) #IReadOnlyList<PdfAttachmentInfo>Returns attachments with a matching associated-file relationship.
Parameters
- relationship OfficeIMO.Pdf.PdfAssociatedFileRelationship
public IReadOnlyList<PdfAttachmentInfo> GetAttachmentsBySource(String source) #IReadOnlyList<PdfAttachmentInfo>Returns attachments from a matching catalog source.
Parameters
- source System.String
public IReadOnlyList<PdfCatalogAction> GetCatalogActionsByActionType(String actionType) #IReadOnlyList<PdfCatalogAction>Returns catalog-level actions with a matching PDF action type.
Parameters
- actionType System.String
public IReadOnlyList<PdfCatalogAction> GetCatalogActionsBySource(String source) #IReadOnlyList<PdfCatalogAction>Returns catalog-level actions from a matching catalog source.
Parameters
- source System.String
public IReadOnlyList<IPdfLogicalElement> GetElements(PdfLogicalElementKind kind) #IReadOnlyList<IPdfLogicalElement>Returns logical elements of the requested kind in document order.
Parameters
- kind OfficeIMO.Pdf.PdfLogicalElementKind
public IReadOnlyList<IPdfLogicalElement> GetElements(Int32 pageNumber) #IReadOnlyList<IPdfLogicalElement>Returns logical elements for a one-based source page number.
Parameters
- pageNumber System.Int32
public IReadOnlyList<PdfFormField> GetFormFields(PdfFormFieldKind kind) #IReadOnlyList<PdfFormField>Returns simple AcroForm fields for the requested common field kind.
Parameters
- kind OfficeIMO.Pdf.PdfFormFieldKind
public IReadOnlyList<PdfFormField> GetFormFields(Int32 pageNumber) #IReadOnlyList<PdfFormField>Returns simple AcroForm fields represented by widgets on a one-based page number.
Parameters
- pageNumber System.Int32
public IReadOnlyList<PdfLogicalFormWidget> GetFormWidgets(String fieldName) #IReadOnlyList<PdfLogicalFormWidget>Returns logical widget annotations for a fully qualified form field name.
Parameters
- fieldName System.String
public IReadOnlyList<PdfLogicalFormWidget> GetFormWidgets(Int32 pageNumber) #IReadOnlyList<PdfLogicalFormWidget>Returns logical widget annotations for a one-based page number.
Parameters
- pageNumber System.Int32
public IReadOnlyList<PdfLogicalLinkAnnotation> GetLinksByDestinationName(String destinationName) #IReadOnlyList<PdfLogicalLinkAnnotation>Returns logical internal link annotations for a named destination.
Parameters
- destinationName System.String
public IReadOnlyList<PdfLogicalLinkAnnotation> GetLinksByDestinationPageNumber(Int32 pageNumber) #IReadOnlyList<PdfLogicalLinkAnnotation>Returns logical internal direct-destination link annotations for a one-based destination page number.
Parameters
- pageNumber System.Int32
public IReadOnlyList<PdfLogicalLinkAnnotation> GetLinksByNamedAction(String namedAction) #IReadOnlyList<PdfLogicalLinkAnnotation>Returns logical named-action link annotations for a viewer action name.
Parameters
- namedAction System.String
public IReadOnlyList<PdfLogicalLinkAnnotation> GetLinksByRemoteFile(String remoteFile) #IReadOnlyList<PdfLogicalLinkAnnotation>Returns logical remote GoTo link annotations for a target file.
Parameters
- remoteFile System.String
public IReadOnlyList<PdfLogicalLinkAnnotation> GetLinksByUri(String uri) #IReadOnlyList<PdfLogicalLinkAnnotation>Returns logical URI link annotations for a URI action target.
Parameters
- uri System.String
public IReadOnlyList<PdfOptionalContentGroup> GetOptionalContentGroupsByName(String name) #IReadOnlyList<PdfOptionalContentGroup>Returns optional-content groups with a matching layer display name.
Parameters
- name System.String
public IReadOnlyList<PdfOutputIntentInfo> GetOutputIntentsByOutputConditionIdentifier(String outputConditionIdentifier) #IReadOnlyList<PdfOutputIntentInfo>Returns output intents with a matching /OutputConditionIdentifier.
Parameters
- outputConditionIdentifier System.String
public IReadOnlyList<PdfOutputIntentInfo> GetOutputIntentsBySubtype(String subtype) #IReadOnlyList<PdfOutputIntentInfo>Returns output intents with a matching /S subtype.
Parameters
- subtype System.String
public IReadOnlyList<PdfPageAction> GetPageActions(Int32 pageNumber) #IReadOnlyList<PdfPageAction>Returns page-level additional actions for a one-based page number.
Parameters
- pageNumber System.Int32
public IReadOnlyList<PdfPageAction> GetPageActionsByActionPath(String actionPath) #IReadOnlyList<PdfPageAction>Returns page-level additional actions with a matching stable action path.
Parameters
- actionPath System.String
public IReadOnlyList<PdfPageAction> GetPageActionsByActionType(String actionType) #IReadOnlyList<PdfPageAction>Returns page-level additional actions with a matching PDF action type.
Parameters
- actionType System.String
public IReadOnlyList<PdfPageAction> GetPageActionsByTriggerName(String triggerName) #IReadOnlyList<PdfPageAction>Returns page-level additional actions with a matching page /AA trigger key.
Parameters
- triggerName System.String
public IReadOnlyList<PdfLogicalPage> GetPages(Int32 pageNumber) #IReadOnlyList<PdfLogicalPage>Returns logical pages for a one-based source page number, preserving range-selection duplicates.
Parameters
- pageNumber System.Int32
public Boolean HasElementKind(PdfLogicalElementKind kind) #BooleanTrue when at least one logical element of the requested kind is present.
Parameters
- kind OfficeIMO.Pdf.PdfLogicalElementKind
public Boolean HasSourcePage(Int32 pageNumber) #BooleanTrue when at least one logical page for the one-based source page number is present.
Parameters
- pageNumber System.Int32
public static PdfLogicalDocument Load(Byte[] pdf, PdfTextLayoutOptions options = null) #PdfLogicalDocumentLoads a PDF from bytes and returns the logical read model.
Parameters
- pdf System.Byte[]
- options OfficeIMO.Pdf.PdfTextLayoutOptions = null
public static PdfLogicalDocument Load(Byte[] pdf, PdfTextLayoutOptions options, PdfReadOptions readOptions) #PdfLogicalDocumentLoads a PDF from bytes with explicit read limits or credentials and returns the logical read model.
Parameters
- pdf System.Byte[]
- options OfficeIMO.Pdf.PdfTextLayoutOptions
- readOptions OfficeIMO.Pdf.PdfReadOptions
public static PdfLogicalDocument Load(String path, PdfTextLayoutOptions options = null) #PdfLogicalDocumentLoads a PDF from a file path and returns the logical read model.
Parameters
- path System.String
- options OfficeIMO.Pdf.PdfTextLayoutOptions = null
public static PdfLogicalDocument Load(Stream stream, PdfTextLayoutOptions options = null) #PdfLogicalDocumentLoads a PDF from a readable stream and returns the logical read model. Seekable streams are read from the beginning and restored; non-seekable streams are read forward from their current position.
Parameters
- stream System.IO.Stream
- options OfficeIMO.Pdf.PdfTextLayoutOptions = null
public static PdfLogicalDocument LoadPageRanges(Byte[] pdf, params PdfPageRange[] pageRanges) #PdfLogicalDocumentLoads selected source page ranges from PDF bytes into the logical read model, preserving caller order and overlaps.
Parameters
- pdf System.Byte[]
- pageRanges OfficeIMO.Pdf.PdfPageRange[]
public static PdfLogicalDocument LoadPageRanges(Byte[] pdf, PdfTextLayoutOptions options, params PdfPageRange[] pageRanges) #PdfLogicalDocumentLoads selected source page ranges from PDF bytes into the logical read model, preserving caller order and overlaps.
Parameters
- pdf System.Byte[]
- options OfficeIMO.Pdf.PdfTextLayoutOptions
- pageRanges OfficeIMO.Pdf.PdfPageRange[]
public static PdfLogicalDocument LoadPageRanges(String path, params PdfPageRange[] pageRanges) #PdfLogicalDocumentLoads selected source page ranges from a file path into the logical read model, preserving caller order and overlaps.
Parameters
- path System.String
- pageRanges OfficeIMO.Pdf.PdfPageRange[]
public static PdfLogicalDocument LoadPageRanges(String path, PdfTextLayoutOptions options, params PdfPageRange[] pageRanges) #PdfLogicalDocumentLoads selected source page ranges from a file path into the logical read model, preserving caller order and overlaps.
Parameters
- path System.String
- options OfficeIMO.Pdf.PdfTextLayoutOptions
- pageRanges OfficeIMO.Pdf.PdfPageRange[]
public static PdfLogicalDocument LoadPageRanges(Stream stream, params PdfPageRange[] pageRanges) #PdfLogicalDocumentLoads selected source page ranges from a readable stream into the logical read model, preserving caller order and overlaps. Seekable streams are read from the beginning and restored; non-seekable streams are read forward from their current position.
Parameters
- stream System.IO.Stream
- pageRanges OfficeIMO.Pdf.PdfPageRange[]
public static PdfLogicalDocument LoadPageRanges(Stream stream, PdfTextLayoutOptions options, params PdfPageRange[] pageRanges) #PdfLogicalDocumentLoads selected source page ranges from a readable stream into the logical read model, preserving caller order and overlaps. Seekable streams are read from the beginning and restored; non-seekable streams are read forward from their current position.
Parameters
- stream System.IO.Stream
- options OfficeIMO.Pdf.PdfTextLayoutOptions
- pageRanges OfficeIMO.Pdf.PdfPageRange[]
public Boolean TryGetFormField(String name, out PdfFormField field) #BooleanAttempts to get a simple AcroForm field by its fully qualified field name.
Parameters
- name System.String
- field OfficeIMO.Pdf.PdfFormField@
Inherited Methods
Properties
public IReadOnlyList<PdfAttachmentInfo> Attachments { get; } #Embedded and associated file attachment metadata discovered from the document catalog.
public Int32 AttachmentCount { get; } #Number of embedded and associated file attachments discovered from the document catalog.
public Boolean HasAttachments { get; } #True when at least one embedded or associated file attachment was discovered.
public IReadOnlyList<String> AttachmentNames { get; } #Attachment name-tree keys or associated-file fallback names in first-seen order.
public IReadOnlyList<String> AttachmentFileNames { get; } #Distinct attachment file names in first-seen order.
public IReadOnlyList<String> AttachmentSources { get; } #Distinct catalog attachment sources in first-seen order.
public IReadOnlyList<PdfCatalogAction> CatalogActions { get; } #Catalog-level actions discovered from supported name trees.
public Boolean HasCatalogActions { get; } #True when at least one catalog-level action was read from supported name trees.
public Int32 CatalogActionCount { get; } #Number of catalog-level actions read from supported name trees.
public IReadOnlyList<String> CatalogActionNames { get; } #Catalog action name-tree keys in first-seen order.
public IReadOnlyList<String> CatalogActionTypes { get; } #Distinct catalog action types in first-seen order.
public IReadOnlyList<String> CatalogActionSources { get; } #Distinct catalog action sources in first-seen order.
public IReadOnlyDictionary<String, IReadOnlyList<PdfCatalogAction>> CatalogActionsByActionType { get; } #Catalog actions grouped by PDF action type.
public IReadOnlyDictionary<String, IReadOnlyList<PdfCatalogAction>> CatalogActionsBySource { get; } #Catalog actions grouped by catalog source.
public PdfMetadata Metadata { get; } #Document metadata read from the PDF Info dictionary when available.
public IReadOnlyList<PdfLogicalPage> Pages { get; } #Logical pages in document order.
public IReadOnlyDictionary<Int32, IReadOnlyList<PdfLogicalPage>> PagesBySourcePageNumber { get; } #Logical pages grouped by one-based source page number. Range-based loads can contain the same source page more than once.
public IReadOnlyList<PdfOutlineItem> Outlines { get; } #Top-level document outline/bookmark entries.
public IReadOnlyList<PdfPageLabel> PageLabels { get; } #Page-label rules discovered from the document catalog.
public IReadOnlyList<PdfNamedDestination> NamedDestinations { get; } #Named destinations discovered from the document catalog.
public PdfDocumentOpenAction OpenAction { get; } #Simple document open action discovered from the document catalog, when supported.
public PdfViewerPreferences ViewerPreferences { get; } #Simple viewer preference entries discovered from the document catalog, when supported.
public IReadOnlyList<PdfFormField> FormFields { get; } #Simple AcroForm fields discovered from the document catalog.
public String AcroFormDefaultAppearance { get; } #AcroForm default appearance string from /DA, when present.
public Boolean HasAcroFormDefaultAppearance { get; } #True when an AcroForm default appearance string was readable.
public Nullable<Int32> AcroFormQuadding { get; } #Raw AcroForm default /Q quadding value, when present.
public Boolean HasAcroFormQuadding { get; } #True when an AcroForm default /Q quadding value was readable.
public PdfFormFieldTextAlignment AcroFormTextAlignment { get; } #Common AcroForm default text alignment inferred from /Q quadding.
public PdfAcroFormXfaInfo AcroFormXfa { get; } #AcroForm XFA packet metadata when /AcroForm /XFA is present.
public Boolean HasAcroFormXfa { get; } #True when the AcroForm contains an XFA packet entry.
public Nullable<Boolean> AcroFormNeedAppearances { get; } #AcroForm NeedAppearances flag, when present.
public Boolean RequiresAcroFormAppearanceRegeneration { get; } #True when the AcroForm requests viewer-side appearance regeneration.
public Boolean HasAcroFormNeedAppearances { get; } #True when an AcroForm NeedAppearances flag was readable.
public Nullable<Int32> AcroFormSignatureFlags { get; } #Raw AcroForm signature flags from /SigFlags, when present.
public Boolean HasAcroFormSignatureFlags { get; } #True when AcroForm signature flags were readable.
public Boolean AcroFormSignaturesExist { get; } #True when AcroForm /SigFlags indicates that the document contains signatures.
public Boolean AcroFormAppendOnly { get; } #True when AcroForm /SigFlags indicates that the document should only be saved by appending changes.
public IReadOnlyDictionary<String, PdfFormField> FormFieldsByName { get; } #Named simple AcroForm fields keyed by fully qualified field name.
public IReadOnlyList<String> FormFieldNames { get; } #Fully qualified names for simple AcroForm fields that have a readable name.
public IReadOnlyDictionary<PdfFormFieldKind, IReadOnlyList<PdfFormField>> FormFieldsByKind { get; } #Simple AcroForm fields grouped by common field kind.
public IReadOnlyDictionary<Int32, IReadOnlyList<PdfFormField>> FormFieldsByPageNumber { get; } #Simple AcroForm fields grouped by one-based page number for fields that have readable widgets.
public IReadOnlyList<PdfLogicalTextBlock> TextBlocks { get; } #All line-level text blocks flattened in page order.
public IReadOnlyList<PdfLogicalHeading> Headings { get; } #All heuristic heading objects flattened in page order.
public IReadOnlyList<PdfLogicalParagraph> Paragraphs { get; } #All heuristic paragraph objects flattened in page order.
public IReadOnlyList<PdfLogicalListItem> ListItems { get; } #All detected list item objects flattened in page order.
public IReadOnlyList<PdfLogicalTable> Tables { get; } #All detected table objects flattened in page order.
public IReadOnlyList<PdfLogicalImage> Images { get; } #All image XObject entries flattened in page order.
public IReadOnlyList<PdfLogicalLinkAnnotation> Links { get; } #All URI, named-destination, direct-destination, named-action, and remote GoTo link annotations flattened in page order.
public IReadOnlyDictionary<String, IReadOnlyList<PdfLogicalLinkAnnotation>> LinksByUri { get; } #URI link annotations grouped by URI action target.
public IReadOnlyDictionary<String, IReadOnlyList<PdfLogicalLinkAnnotation>> LinksByDestinationName { get; } #Internal named-destination link annotations grouped by destination name.
public IReadOnlyDictionary<Int32, IReadOnlyList<PdfLogicalLinkAnnotation>> LinksByDestinationPageNumber { get; } #Internal direct-destination link annotations grouped by one-based destination page number.
public IReadOnlyDictionary<String, IReadOnlyList<PdfLogicalLinkAnnotation>> LinksByNamedAction { get; } #Named-action link annotations grouped by viewer action name.
public IReadOnlyDictionary<String, IReadOnlyList<PdfLogicalLinkAnnotation>> LinksByRemoteFile { get; } #Remote GoTo link annotations grouped by target file.
public IReadOnlyList<PdfLogicalFormWidget> FormWidgets { get; } #All AcroForm widget annotations flattened in page order.
public IReadOnlyDictionary<String, IReadOnlyList<PdfLogicalFormWidget>> FormWidgetsByFieldName { get; } #AcroForm widget annotations grouped by fully qualified field name.
public IReadOnlyDictionary<Int32, IReadOnlyList<PdfLogicalFormWidget>> FormWidgetsByPageNumber { get; } #AcroForm widget annotations grouped by one-based page number.
public String CatalogPageMode { get; } #Catalog page mode, for example UseOutlines or FullScreen, when present.
public String CatalogPageLayout { get; } #Catalog page layout, for example SinglePage or TwoColumnLeft, when present.
public String CatalogVersion { get; } #Catalog PDF version override, for example 1.7, when present.
public String CatalogLanguage { get; } #Catalog language tag, for example en-US or pl-PL, when present.
public Int32 PageCount { get; } #Number of pages in the logical document.
public Boolean HasOutlines { get; } #True when at least one outline/bookmark entry was read from the catalog.
public Boolean HasReadablePageLabels { get; } #True when at least one readable page-label rule was read from the catalog.
public Boolean HasNamedDestinations { get; } #True when at least one named destination was read from the catalog.
public Boolean HasReadableOpenAction { get; } #True when a simple document open action was read from the catalog.
public Boolean HasReadableViewerPreferences { get; } #True when simple viewer preferences were read from the catalog.
public Boolean HasLinks { get; } #True when at least one URI, named-destination, direct-destination, named-action, or remote GoTo link annotation was placed on a logical page.
public Boolean HasFormFields { get; } #True when at least one simple AcroForm field was read from the document catalog.
public Boolean HasFormWidgets { get; } #True when at least one AcroForm widget annotation was placed on a logical page.
public IReadOnlyList<IPdfLogicalElement> Elements { get; } #All logical page elements flattened in page order.
public IReadOnlyDictionary<PdfLogicalElementKind, IReadOnlyList<IPdfLogicalElement>> ElementsByKind { get; } #Logical page elements grouped by element kind.
public IReadOnlyDictionary<Int32, IReadOnlyList<IPdfLogicalElement>> ElementsByPageNumber { get; } #Logical page elements grouped by one-based source page number.
public PdfOptionalContentProperties OptionalContent { get; } #Catalog optional-content/layer metadata discovered from /OCProperties.
public Boolean HasReadableOptionalContent { get; } #True when readable optional-content/layer metadata was discovered.
public IReadOnlyList<PdfOptionalContentGroup> OptionalContentGroups { get; } #Optional-content groups discovered from catalog /OCProperties.
public Int32 OptionalContentGroupCount { get; } #Number of optional-content groups discovered from catalog /OCProperties.
public Boolean HasOptionalContentGroups { get; } #True when at least one optional-content group was discovered.
public IReadOnlyList<String> OptionalContentGroupNames { get; } #Optional-content group names in first-seen catalog order.
public IReadOnlyList<PdfOutputIntentInfo> OutputIntents { get; } #Catalog output intent metadata discovered from /OutputIntents.
public Int32 OutputIntentCount { get; } #Number of catalog output intents discovered from /OutputIntents.
public Boolean HasReadableOutputIntents { get; } #True when at least one catalog output intent was readable.
public IReadOnlyList<String> OutputIntentSubtypes { get; } #Distinct output intent subtypes in first-seen order.
public IReadOnlyList<String> OutputConditionIdentifiers { get; } #Distinct output condition identifiers in first-seen order.
public IReadOnlyList<PdfPageAction> PageActions { get; } #Page-level additional actions attached to source page dictionaries.
public Boolean HasPageActions { get; } #True when at least one page-level additional action was read.
public Int32 PageActionCount { get; } #Number of page-level additional actions read.
public IReadOnlyList<String> PageActionTypes { get; } #Distinct page-level action types in first-seen order.
public IReadOnlyList<String> PageActionTriggerNames { get; } #Distinct page-level additional-action trigger keys in first-seen order.
public IReadOnlyList<String> PageActionPaths { get; } #Distinct page-level action paths in first-seen order.
public IReadOnlyDictionary<String, IReadOnlyList<PdfPageAction>> PageActionsByActionType { get; } #Page-level additional actions grouped by PDF action type.
public IReadOnlyDictionary<String, IReadOnlyList<PdfPageAction>> PageActionsByTriggerName { get; } #Page-level additional actions grouped by page /AA trigger key.
public IReadOnlyDictionary<String, IReadOnlyList<PdfPageAction>> PageActionsByActionPath { get; } #Page-level additional actions grouped by stable action path.
public IReadOnlyDictionary<Int32, IReadOnlyList<PdfPageAction>> PageActionsByPageNumber { get; } #Page-level additional actions grouped by one-based page number.
public PdfDocumentSecurityInfo Security { get; } #Security, signature, and revision markers read from the source PDF bytes.
public Boolean HasSecurityState { get; } #True when the document exposes encryption, signature, permission, or incremental-update markers.
public PdfTaggedContentInfo TaggedContent { get; } #Tagged PDF structure metadata discovered from /MarkInfo and /StructTreeRoot.
public Boolean HasReadableTaggedContent { get; } #True when readable tagged PDF structure metadata was discovered.
public PdfXmpMetadataInfo XmpMetadata { get; } #Catalog XMP metadata stream discovered from /Metadata.
public Boolean HasReadableXmpMetadata { get; } #True when readable catalog XMP metadata was discovered.
Extension Methods
public static String ExportStructured(PdfLogicalDocument document, PdfStructuredExportFormat format) #StringExports an already parsed logical document without rerunning extraction.
Parameters
- document OfficeIMO.Pdf.PdfLogicalDocument
- format OfficeIMO.Pdf.PdfStructuredExportFormat
public static String ToHtmlTables(PdfLogicalDocument document, PdfLogicalTableTextExportOptions options = null) #StringExports normalized logical PDF tables as semantic HTML tables.
Parameters
- document OfficeIMO.Pdf.PdfLogicalDocument
- Logical PDF document to inspect.
- options OfficeIMO.Pdf.PdfLogicalTableTextExportOptions = null
- Optional table export settings.
Returns
HTML containing only detected PDF tables and optional source captions.
public static String ToMarkdown(PdfLogicalDocument document, PdfLogicalMarkdownOptions options = null) #StringRenders the logical PDF document as Markdown using headings, paragraphs, lists, tables, and optional annotations from the existing logical model.
Parameters
- document OfficeIMO.Pdf.PdfLogicalDocument
- options OfficeIMO.Pdf.PdfLogicalMarkdownOptions = null
public static String ToMarkdownTables(PdfLogicalDocument document, PdfLogicalTableTextExportOptions options = null) #StringExports normalized logical PDF tables as Markdown tables.
Parameters
- document OfficeIMO.Pdf.PdfLogicalDocument
- Logical PDF document to inspect.
- options OfficeIMO.Pdf.PdfLogicalTableTextExportOptions = null
- Optional table export settings.
Returns
Markdown containing only detected PDF tables and optional source captions.
public static IReadOnlyList<String> ToPageXmlDocuments(PdfLogicalDocument document) #IReadOnlyList<String>Exports one schema-valid PAGE XML document per logical page. PAGE XML is image/page scoped and does not define a multi-page root.
Parameters
- document OfficeIMO.Pdf.PdfLogicalDocument