Back to Devexpress

PdfSaveOptions.EncryptionOptions Property

officefileapi-devexpress-dot-pdf-dot-pdfsaveoptions.md

latest6.0 KB
Original Source

PdfSaveOptions.EncryptionOptions Property

Specifies encryption options of a PDF document.

Namespace : DevExpress.Pdf

Assembly : DevExpress.Pdf.v25.2.Core.dll

NuGet Package : DevExpress.Pdf.Core

Declaration

csharp
public PdfEncryptionOptions EncryptionOptions { get; set; }
vb
Public Property EncryptionOptions As PdfEncryptionOptions

Property Value

TypeDescription
PdfEncryptionOptions

A PdfEncryptionOptions object that represents encryption options of a PDF document.

|

Remarks

To protect document opening, create a PdfEncryptionOptions object using the PdfSaveOptions.EncryptionOptions property and specify the user password using the PdfEncryptionOptions.UserPasswordString property.

To restrict the user from data extraction, data modification, interactive, or printing operations with a PDF document, create a PdfEncryptionOptions object using the PdfSaveOptions.EncryptionOptions property and specify the owner password using the PdfEncryptionOptions.OwnerPasswordString property and corresponding permissions using the PdfEncryptionOptions.DataExtractionPermissions, PdfEncryptionOptions.ModificationPermissions,PdfEncryptionOptions.InteractivityPermissions, and PdfEncryptionOptions.PrintingPermissions properties.

For more information, see the Document Protection topic.

Example

This example shows how a PDF document can be protected using both the owner and user passwords.

Refer to the following topic for more information: Document Protection

View Example

csharp
using DevExpress.Pdf;

namespace PDFPasswordProtection {
    class Program {
        static void Main(string[] args) {
            using (PdfDocumentProcessor pdfDocumentProcessor = new PdfDocumentProcessor()) {
                // Load a PDF document.
                pdfDocumentProcessor.LoadDocument(@"..\..\Demo.pdf");

                // Initialize encryption options with owner and user passwords.
                PdfEncryptionOptions encryptionOptions = new PdfEncryptionOptions(
                    ownerPassword: "OwnerPassword",
                    userPassword: "UserPassword"
                );

                // Specify printing, data extraction, modification, and interactivity permissions.
                encryptionOptions.PrintingPermissions = PdfDocumentPrintingPermissions.Allowed;
                encryptionOptions.DataExtractionPermissions = PdfDocumentDataExtractionPermissions.NotAllowed;
                encryptionOptions.ModificationPermissions = PdfDocumentModificationPermissions.DocumentAssembling;
                encryptionOptions.InteractivityPermissions = PdfDocumentInteractivityPermissions.Allowed;

                // Specify the 256-bit AES encryption algorithm.
                encryptionOptions.Algorithm = PdfEncryptionAlgorithm.AES256;

                // Save the protected document with encryption settings.
                pdfDocumentProcessor.SaveDocument(
                    @"..\..\ProtectedDocument.pdf",
                    new PdfSaveOptions() { EncryptionOptions = encryptionOptions }
                );
            }
        }
    }
}
vb
Imports DevExpress.Pdf

Module PDFPasswordProtection
    Sub Main()
        Using pdfDocumentProcessor As New PdfDocumentProcessor()

            ' Load a PDF document.
            pdfDocumentProcessor.LoadDocument("..\..\Demo.pdf")

            ' Initialize encryption options with owner and user passwords.
            Dim encryptionOptions As New PdfEncryptionOptions(
                ownerPassword:="OwnerPassword",
                userPassword:="UserPassword"
            )

            ' Specify printing, data extraction, modification, and interactivity permissions.
            encryptionOptions.PrintingPermissions = PdfDocumentPrintingPermissions.Allowed
            encryptionOptions.DataExtractionPermissions = PdfDocumentDataExtractionPermissions.NotAllowed
            encryptionOptions.ModificationPermissions = PdfDocumentModificationPermissions.DocumentAssembling
            encryptionOptions.InteractivityPermissions = PdfDocumentInteractivityPermissions.Allowed

            ' Specify the 256-bit AES encryption algorithm.
            encryptionOptions.Algorithm = PdfEncryptionAlgorithm.AES256

            ' Save the protected document with encryption settings.
            pdfDocumentProcessor.SaveDocument(
                "..\..\ProtectedDocument.pdf",
                New PdfSaveOptions() With {.EncryptionOptions = encryptionOptions}
            )

        End Using
    End Sub
End Module

See Also

PdfSaveOptions Struct

PdfSaveOptions Members

DevExpress.Pdf Namespace