API Reference

Class

PdfDocumentSecurityInfo

Namespace OfficeIMO.Pdf
Assembly OfficeIMO.Pdf
Modifiers sealed

Lightweight security, signature, and revision markers read from a PDF file.

Inheritance

  • Object
  • PdfDocumentSecurityInfo

Usage

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

Properties

public Boolean HasEncryption { get; } #

True when the file contains an /Encrypt marker.

public Nullable<Int32> EncryptObjectNumber { get; } #

Encryption dictionary object number when the trailer points to an indirect dictionary.

public String EncryptionFilter { get; } #

Encryption /Filter name, for example Standard, when readable.

public String EncryptionSubFilter { get; } #

Encryption /SubFilter name, when readable.

public Nullable<Int32> EncryptionVersion { get; } #

Raw encryption algorithm version from /V, when readable.

public Nullable<Int32> EncryptionRevision { get; } #

Raw standard-security-handler revision from /R, when readable.

public Nullable<Int32> EncryptionLengthBits { get; } #

Encryption key length in bits from /Length, when readable.

public Nullable<Int32> EncryptionPermissions { get; } #

Raw standard-security-handler permission bits from /P, when readable.

public Nullable<PdfStandardPermissions> AllowedStandardPermissions { get; } #

Typed Standard security permissions, when a raw `/P` mask is present.

public Nullable<Boolean> EncryptMetadata { get; } #

Encryption /EncryptMetadata flag, when readable.

public PdfPasswordAuthenticationRole PasswordAuthenticationRole { get; } #

Role established by the supplied Standard-security password, or None when no authentication was performed.

public Boolean HasOwnerAuthorization { get; } #

True when the supplied password authenticated as the Standard-security owner password.

public Boolean HasReadableEncryptionSettings { get; } #

True when the encryption dictionary exposed at least one readable setting.

public Nullable<Boolean> AllowsPrinting { get; } #

True when the raw permissions allow low-resolution printing.

public Nullable<Boolean> AllowsModification { get; } #

True when the raw permissions allow document modification.

public Nullable<Boolean> AllowsCopying { get; } #

True when the raw permissions allow content copying or extraction.

public Nullable<Boolean> AllowsAnnotationChanges { get; } #

True when the raw permissions allow comments or form-field annotation changes.

public Nullable<Boolean> AllowsFormFilling { get; } #

True when the raw permissions allow filling existing form fields.

public Nullable<Boolean> AllowsAccessibilityExtraction { get; } #

True when the raw permissions allow accessibility extraction.

public Nullable<Boolean> AllowsDocumentAssembly { get; } #

True when the raw permissions allow document assembly.

public Nullable<Boolean> AllowsHighQualityPrinting { get; } #

True when the raw permissions allow high-quality printing.

public Boolean HasSignatures { get; } #

True when signature markers, signature fields, or signature values were found.

public IReadOnlyList<Int32> SignatureFieldObjectNumbers { get; } #

Object numbers for AcroForm fields whose /FT is /Sig.

public IReadOnlyList<String> SignatureFieldNames { get; } #

Readable names for AcroForm signature fields.

public IReadOnlyList<PdfSignatureInfo> Signatures { get; } #

Readable signature value dictionaries and their owning AcroForm fields.

public Int32 SignatureFieldCount { get; } #

Number of AcroForm fields whose /FT is /Sig.

public Int32 SignatureCount { get; } #

Number of readable signature value dictionaries.

public Int32 SignatureValueCount { get; } #

Number of signature value dictionaries discovered from /Type /Sig or /ByteRange.

public Boolean HasByteRange { get; } #

True when a signature /ByteRange array was found.

public Int32 ByteRangeValueCount { get; } #

Number of numeric values found in signature /ByteRange arrays.

public Int32 ByteRangeSegmentCount { get; } #

Number of byte ranges represented by the numeric /ByteRange values.

public Nullable<Int32> AcroFormSignatureFlags { get; } #

Raw AcroForm /SigFlags value, when readable.

public Boolean AcroFormSignaturesExist { get; } #

True when AcroForm /SigFlags says signatures exist.

public Boolean AcroFormAppendOnly { get; } #

True when AcroForm /SigFlags says changes should be appended.

public Boolean HasDocMDPPermissions { get; } #

True when catalog /Perms exposes DocMDP permissions.

public Nullable<Int32> DocMDPSignatureObjectNumber { get; } #

Object number referenced by catalog /Perms /DocMDP, when readable.

public String DocMDPTransformMethod { get; } #

DocMDP signature reference /TransformMethod name, when readable.

public String DocMDPTransformVersion { get; } #

DocMDP /TransformParams /V version name or string, when readable.

public Nullable<Int32> DocMDPPermissionLevel { get; } #

DocMDP /TransformParams /P permission level, when readable.

public Boolean HasUsageRights { get; } #

True when catalog /Perms exposes usage-rights entries such as /UR or /UR3.

public IReadOnlyList<Int32> UsageRightsObjectNumbers { get; } #

Object numbers referenced by catalog usage-rights entries such as /UR or /UR3.

public PdfDocumentDssInfo DocumentSecurityStore { get; } #

Document Security Store (/DSS) evidence used for long-term signature validation, when present.

public Boolean HasDocumentSecurityStore { get; } #

True when the catalog exposes a /DSS dictionary.

public Boolean HasLongTermValidationEvidence { get; } #

True when the /DSS dictionary exposes validation evidence references or VRI entries.

public Nullable<Int32> RootObjectNumber { get; } #

Trailer root catalog object number, when readable.

public Nullable<Int32> RootObjectGeneration { get; } #

Trailer root catalog generation, when readable.

public Nullable<Int32> InfoObjectNumber { get; } #

Trailer info dictionary object number, when readable.

public Nullable<Int32> InfoObjectGeneration { get; } #

Trailer info dictionary generation, when readable.

public Boolean HasTrailerId { get; } #

True when a trailer /ID entry was found.

public Int32 StartXrefCount { get; } #

Number of startxref sections found in the file.

public Nullable<Int32> LastStartXrefOffset { get; } #

Offset from the last startxref section, when readable.

public IReadOnlyList<Int32> StartXrefOffsets { get; } #

All readable startxref offsets in file order.

public IReadOnlyList<Int32> PreviousXrefOffsets { get; } #

All readable /Prev offsets in file order.

public IReadOnlyList<PdfDocumentRevisionInfo> Revisions { get; } #

Readable cross-reference revision markers in file order.

public Int32 RevisionCount { get; } #

Number of readable cross-reference revision markers.

public Boolean HasIncrementalUpdates { get; } #

True when multiple revisions or /Prev links were found.

public Boolean HasPreviousRevision { get; } #

True when a trailer or xref stream points to a previous revision.

public Boolean HasXrefStreams { get; } #

True when xref stream markers were found.

public Boolean HasObjectStreams { get; } #

True when object stream markers were found.

public Boolean RequiresAppendOnlyMutation { get; } #

True when mutation must preserve the existing file by appending a new revision instead of rewriting bytes in place.

public Boolean BlocksOfficeIMOAppendOnlyMutation { get; } #

True when the current OfficeIMO.Pdf writer cannot safely attempt append-only mutation for this input yet.

public Boolean BlocksOfficeIMOFullRewriteMutation { get; } #

True when OfficeIMO.Pdf should avoid safe full-rewrite mutation for this input.