API Reference
PdfDocumentInfo
Basic document-level information useful for inspection and automation scenarios.
Inheritance
- Object
- PdfDocumentInfo
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 PdfAnalysisReport.Info
- Property PdfConversionProofReport.DocumentInfo
- Property PdfDiagnosticReport.Info
- Method PdfDocument.Inspect
- Property PdfDocumentPreflight.DocumentInfo
- Method PdfDocumentReader.DocumentInfo
- Method PdfDocumentReader.TryDocumentInfo
- Property PdfRewritePreservationReport.Original
- Property PdfRewritePreservationReport.Rewritten
- Property PdfValidationResult.DocumentInfo
Methods
public IReadOnlyList<PdfAnnotation> GetAnnotationsByActionType(String actionType) #IReadOnlyList<PdfAnnotation>Returns generic page annotations with a matching primary or additional action type.
Parameters
- actionType System.String
public IReadOnlyList<PdfAnnotation> GetAnnotationsBySubtype(String subtype) #IReadOnlyList<PdfAnnotation>Returns generic page annotations with a matching PDF annotation subtype name.
Parameters
- subtype System.String
public IReadOnlyList<PdfAttachmentInfo> GetAttachmentsByFileName(String fileName) #IReadOnlyList<PdfAttachmentInfo>Returns attachments with a matching file specification file name.
Parameters
- fileName System.String
public IReadOnlyList<PdfAttachmentInfo> GetAttachmentsByName(String name) #IReadOnlyList<PdfAttachmentInfo>Returns attachments with a matching name-tree key or associated-file fallback name.
Parameters
- name 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<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<PdfFormWidget> GetFormWidgets(String fieldName) #IReadOnlyList<PdfFormWidget>Returns simple widget annotations for a fully qualified form field name.
Parameters
- fieldName System.String
public IReadOnlyList<PdfFormWidget> GetFormWidgets(Int32 pageNumber) #IReadOnlyList<PdfFormWidget>Returns simple widget annotations for a one-based page number.
Parameters
- pageNumber System.Int32
public IReadOnlyList<PdfLinkAnnotation> GetLinkAnnotationsByDestinationName(String destinationName) #IReadOnlyList<PdfLinkAnnotation>Returns simple named-destination link annotations for a destination name.
Parameters
- destinationName System.String
public IReadOnlyList<PdfLinkAnnotation> GetLinkAnnotationsByDestinationPageNumber(Int32 pageNumber) #IReadOnlyList<PdfLinkAnnotation>Returns simple direct-destination link annotations for a one-based destination page number.
Parameters
- pageNumber System.Int32
public IReadOnlyList<PdfLinkAnnotation> GetLinkAnnotationsByNamedAction(String namedAction) #IReadOnlyList<PdfLinkAnnotation>Returns simple named-action link annotations for a viewer action name.
Parameters
- namedAction System.String
public IReadOnlyList<PdfLinkAnnotation> GetLinkAnnotationsByRemoteFile(String remoteFile) #IReadOnlyList<PdfLinkAnnotation>Returns simple remote GoTo link annotations for a target file.
Parameters
- remoteFile System.String
public IReadOnlyList<PdfLinkAnnotation> GetLinkAnnotationsByUri(String uri) #IReadOnlyList<PdfLinkAnnotation>Returns simple 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 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 IReadOnlyDictionary<String, IReadOnlyList<PdfAttachmentInfo>> AttachmentsByName { get; } #Attachments grouped by name-tree key or associated-file fallback name.
public IReadOnlyDictionary<String, IReadOnlyList<PdfAttachmentInfo>> AttachmentsByFileName { get; } #Attachments grouped by file specification file name.
public IReadOnlyDictionary<String, IReadOnlyList<PdfAttachmentInfo>> AttachmentsBySource { get; } #Attachments grouped by catalog source.
public IReadOnlyDictionary<PdfAssociatedFileRelationship, IReadOnlyList<PdfAttachmentInfo>> AttachmentsByRelationship { get; } #Attachments grouped by associated-file relationship.
public IReadOnlyList<PdfCatalogAction> CatalogActions { get; } #Catalog-level actions read from supported name trees.
public Int32 CatalogActionCount { get; } #Number of catalog-level actions read from supported name trees.
public Boolean HasCatalogActions { get; } #True when at least one catalog-level action was 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 Int32 PageCount { get; } #Number of pages in the document.
public IReadOnlyList<PdfPageInfo> Pages { get; } #Pages in document order.
public Int32 AnnotationCount { get; } #Number of generic page annotations read from all pages.
public Int32 AnnotationActionTypeCount { get; } #Number of distinct primary or additional annotation action types read from all pages.
public Int32 LinkAnnotationCount { get; } #Number of simple link annotations read from all pages.
public IReadOnlyList<PdfAnnotation> Annotations { get; } #Generic page annotations read from all pages in document order.
public IReadOnlyDictionary<String, IReadOnlyList<PdfAnnotation>> AnnotationsBySubtype { get; } #Generic page annotations grouped by PDF annotation subtype name.
public IReadOnlyList<String> AnnotationActionTypes { get; } #Distinct primary and additional annotation action types read from all pages in first-seen document order.
public IReadOnlyDictionary<String, IReadOnlyList<PdfAnnotation>> AnnotationsByActionType { get; } #Generic page annotations grouped by primary or additional action type.
public Int32 LinkUriCount { get; } #Number of distinct simple URI link targets read from all pages.
public Int32 LinkDestinationCount { get; } #Number of distinct simple named-destination link targets read from all pages.
public Int32 LinkDestinationPageNumberCount { get; } #Number of distinct simple direct-destination link target pages read from all pages.
public Int32 LinkNamedActionCount { get; } #Number of distinct simple named viewer actions read from all pages.
public Int32 LinkRemoteFileCount { get; } #Number of distinct remote GoTo target files read from all pages.
public Int32 NamedDestinationCount { get; } #Number of named destinations read from the document catalog.
public Int32 FormFieldCount { get; } #Number of simple AcroForm fields read from the document catalog.
public Int32 FormWidgetCount { get; } #Number of simple AcroForm widget annotations read from the document catalog fields.
public Int32 PageLabelCount { get; } #Number of page-label rules read from the document catalog.
public IReadOnlyList<PdfLinkAnnotation> LinkAnnotations { get; } #Simple link annotations read from all pages in document order.
public IReadOnlyList<String> LinkUris { get; } #Distinct simple URI link targets read from all pages in first-seen document order.
public IReadOnlyList<String> LinkDestinationNames { get; } #Distinct simple named-destination link targets read from all pages in first-seen document order.
public IReadOnlyList<Int32> LinkDestinationPageNumbers { get; } #Distinct simple direct-destination link target page numbers read from all pages in first-seen document order.
public IReadOnlyList<String> LinkNamedActions { get; } #Distinct simple named viewer actions read from all pages in first-seen document order.
public IReadOnlyList<String> LinkRemoteFiles { get; } #Distinct remote GoTo target files read from all pages in first-seen document order.
public IReadOnlyDictionary<String, IReadOnlyList<PdfLinkAnnotation>> LinkAnnotationsByUri { get; } #Simple URI link annotations grouped by URI action target.
public IReadOnlyDictionary<String, IReadOnlyList<PdfLinkAnnotation>> LinkAnnotationsByDestinationName { get; } #Simple named-destination link annotations grouped by destination name.
public IReadOnlyDictionary<Int32, IReadOnlyList<PdfLinkAnnotation>> LinkAnnotationsByDestinationPageNumber { get; } #Simple direct-destination link annotations grouped by one-based destination page number.
public IReadOnlyDictionary<String, IReadOnlyList<PdfLinkAnnotation>> LinkAnnotationsByNamedAction { get; } #Simple named-action link annotations grouped by viewer action name.
public IReadOnlyDictionary<String, IReadOnlyList<PdfLinkAnnotation>> LinkAnnotationsByRemoteFile { get; } #Simple remote GoTo link annotations grouped by target file.
public IReadOnlyList<String> NamedDestinationNames { get; } #Named destination names read from the document catalog in first-seen order.
public IReadOnlyList<String> FormFieldNames { get; } #Readable AcroForm field names in first-seen document order.
public IReadOnlyDictionary<String, PdfFormField> FormFieldsByName { get; } #Named simple AcroForm fields keyed by fully qualified field 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<PdfFormWidget> FormWidgets { get; } #Simple AcroForm widget annotations flattened in field and widget order.
public IReadOnlyDictionary<String, IReadOnlyList<PdfFormWidget>> FormWidgetsByFieldName { get; } #Simple AcroForm widget annotations grouped by fully qualified field name.
public IReadOnlyDictionary<Int32, IReadOnlyList<PdfFormWidget>> FormWidgetsByPageNumber { get; } #Simple AcroForm widget annotations grouped by one-based page number.
public Boolean HasLinkAnnotations { get; } #True when at least one simple link annotation was read from the document pages.
public PdfMetadata Metadata { get; } #Document metadata from the PDF Info dictionary when available.
public IReadOnlyList<PdfOutlineItem> Outlines { get; } #Top-level document outline/bookmark entries.
public IReadOnlyList<PdfPageLabel> PageLabels { get; } #Page-label rules read from the document catalog.
public Boolean HasReadablePageLabels { get; } #True when simple page-label rules were read from the document catalog.
public IReadOnlyList<PdfNamedDestination> NamedDestinations { get; } #Named destinations read from the document catalog.
public IReadOnlyList<PdfFormField> FormFields { get; } #Simple AcroForm fields read from the document catalog.
public Boolean HasReadableFormFields { get; } #True when at least one simple AcroForm field was read from the document catalog.
public Boolean HasFormWidgets { get; } #True when at least one simple AcroForm widget annotation was read from the document catalog fields.
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 PdfDocumentOpenAction OpenAction { get; } #Simple document open action read from the document catalog, when supported.
public Boolean HasReadableOpenAction { get; } #True when a simple document open action was read from the document catalog.
public PdfViewerPreferences ViewerPreferences { get; } #Simple viewer preference entries read from the document catalog, when supported.
public Boolean HasReadableViewerPreferences { get; } #True when simple viewer preference entries were read from the document catalog.
public String HeaderVersion { get; } #PDF header version, for example 1.4, when a header is present.
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 EffectiveVersion { get; } #Effective PDF version inferred from the highest catalog override or file header version.
public Boolean IsPdf20OrLater { get; } #True when the effective PDF version is PDF 2.0 or later.
public String CatalogLanguage { get; } #Catalog language tag, for example en-US or pl-PL, when present.
public Boolean HasSignatures { get; } #True when the document contains digital signature markers.
public Boolean HasForms { get; } #True when the document contains AcroForm or form-field markers.
public Boolean HasAnnotations { get; } #True when the document contains annotation markers.
public Boolean HasOutlines { get; } #True when the document contains outline/bookmark markers.
public Boolean HasCatalogViewSettings { get; } #True when the document contains catalog page mode or layout markers.
public Boolean HasPageLabels { get; } #True when the document contains page label markers.
public Boolean HasCatalogNameTrees { get; } #True when the document contains catalog name-tree markers.
public Boolean HasNamedDestinations { get; } #True when the document contains named destination markers.
public Boolean HasOpenActions { get; } #True when the document contains document open action markers.
public Boolean HasViewerPreferences { get; } #True when the document contains viewer preference markers.
public Boolean HasTaggedContent { get; } #True when the document contains tagged PDF structure markers.
public Boolean HasXmpMetadata { get; } #True when the document contains XMP metadata stream markers.
public Boolean HasCatalogUri { get; } #True when the document catalog contains a URI dictionary.
public Boolean HasOutputIntents { get; } #True when the document contains output intent markers.
public Boolean HasEmbeddedFiles { get; } #True when the document contains embedded file markers.
public Boolean HasOptionalContent { get; } #True when the document contains optional content/layer markers.
public Boolean HasActiveContent { get; } #True when the document contains active content markers such as JavaScript actions.
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 IReadOnlyDictionary<String, IReadOnlyList<PdfOptionalContentGroup>> OptionalContentGroupsByName { get; } #Optional-content groups grouped by layer display name.
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 IReadOnlyDictionary<String, IReadOnlyList<PdfOutputIntentInfo>> OutputIntentsBySubtype { get; } #Output intents grouped by /S subtype.
public IReadOnlyDictionary<String, IReadOnlyList<PdfOutputIntentInfo>> OutputIntentsByOutputConditionIdentifier { get; } #Output intents grouped by /OutputConditionIdentifier.
public Int32 PageActionCount { get; } #Number of page-level additional actions read from page dictionaries.
public Boolean HasPageActions { get; } #True when at least one page-level additional action was read from page dictionaries.
public IReadOnlyList<PdfPageAction> PageActions { get; } #Page-level additional actions read from page dictionaries in document order.
public IReadOnlyList<String> PageActionTypes { get; } #Distinct page-level action types in first-seen document order.
public IReadOnlyList<String> PageActionTriggerNames { get; } #Distinct page-level additional-action trigger keys in first-seen document order.
public IReadOnlyList<String> PageActionPaths { get; } #Distinct page-level action paths in first-seen document 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 Int32 TextFormFieldCount { get; } #Number of AcroForm text fields.
public Int32 ButtonFormFieldCount { get; } #Number of AcroForm button fields.
public Int32 ChoiceFormFieldCount { get; } #Number of AcroForm choice fields.
public Int32 SignatureFormFieldCount { get; } #Number of AcroForm signature fields.
public Int32 ReadOnlyFormFieldCount { get; } #Number of fields with the common read-only flag.
public Int32 RequiredFormFieldCount { get; } #Number of fields with the common required flag.
public Int32 NoExportFormFieldCount { get; } #Number of fields with the common no-export flag.
public Int32 PageProductionBoxCount { get; } #Number of pages with CropBox, BleedBox, TrimBox, or ArtBox information.
public Int32 TrimBoxPageCount { get; } #Number of pages with a TrimBox.
public Int32 BleedBoxPageCount { get; } #Number of pages with a BleedBox.
public Int32 ArtBoxPageCount { get; } #Number of pages with an ArtBox.
public Boolean HasProductionPageBoxes { get; } #True when any page exposes production-oriented boxes such as TrimBox, BleedBox, or ArtBox.
public Int32 ActiveAnnotationCount { get; } #Number of annotations with a primary, additional, or chained action.
public Int32 RiskyAnnotationActionCount { get; } #Number of annotations with JavaScript, launch, submit, import-data, or movie/rendition actions.
public IReadOnlyDictionary<String, Int32> AnnotationSubtypeCounts { get; } #Readable annotation counts grouped by subtype.
public IReadOnlyDictionary<String, Int32> AnnotationActionTypeCounts { get; } #Readable annotation counts grouped by action type.
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.