Contents[ Hide ]
Specifies the operations that are allowed to a user on an encrypted PDF document.
[Flags] public enum PdfPermissions
||Disallows all operations on the PDF document. This is the default value.|
||Allows all operations on the PDF document.|
||Copy or otherwise extract text and graphics from the document by operations other than that controlled by ContentCopyForAccessibility.|
||Extract text and graphics (in support of accessibility to users with disabilities or for other purposes).|
||Modify the contents of the document by operations other than those controlled by ModifyAnnotations, FillIn, and DocumentAssembly.|
||Add or modify text annotations, fill in interactive form fields, and, if ModifyContents is also set, create or modify interactive form fields (including signature fields).|
||Fill in existing interactive form fields (including signature fields), even if ModifyContents is clear.|
||Assemble the document (insert, rotate, or delete pages and create document outline items or thumbnail images), even if ModifyContents is clear.|
||Print the document (possibly not at the highest quality level, depending on whether HighResolutionPrinting is also set).|
||Print the document to a representation from which a faithful digital copy of the PDF content could be generated, based on an implementation-dependent algorithm. When this flag is clear (and Printing is set), printing shall be limited to a low-level representation of the appearance, possibly of degraded quality.|
Shows how to set permissions on a saved PDF document.
Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); builder.Writeln("Hello world!"); PdfEncryptionDetails encryptionDetails = new PdfEncryptionDetails("password", string.Empty); // Start by disallowing all permissions. encryptionDetails.Permissions = PdfPermissions.DisallowAll; // Extend permissions to allow the editing of annotations. encryptionDetails.Permissions = PdfPermissions.ModifyAnnotations | PdfPermissions.DocumentAssembly; // Create a "PdfSaveOptions" object that we can pass to the document's "Save" method // to modify how that method converts the document to .PDF. PdfSaveOptions saveOptions = new PdfSaveOptions(); // Enable encryption via the "EncryptionDetails" property. saveOptions.EncryptionDetails = encryptionDetails; // When we open this document, we will need to provide the password before accessing its contents. doc.Save(ArtifactsDir + "PdfSaveOptions.EncryptionPermissions.pdf", saveOptions);