PdfEncryptionOptions.DataExtractionPermissions Property
Specifies the permissions on data extraction operations.
Namespace: DevExpress.Pdf
Assembly: DevExpress.Pdf.v24.2.Core.dll
NuGet Package: DevExpress.Pdf.Core
#Declaration
public PdfDocumentDataExtractionPermissions DataExtractionPermissions { get; set; }
#Property Value
Type | Description |
---|---|
Pdf |
A Pdf |
Available values:
Name | Description |
---|---|
Not |
Prohibit data extraction operations (copying or text and graphics extraction from the document) including access for the software that uses assistive technologies. |
Accessibility | Allow PDF Viewers to access document contents by using the Viewer’s accessibility features. |
Allowed | Permit data extraction operations (copying or text and graphics extraction from the document) including access for the software that uses assistive technologies. |
#Property Paths
You can access this nested property as listed below:
Object Type | Path to Data |
---|---|
Pdf |
|
#Remarks
This property can be set to the one of the following values: PdfDocumentDataExtractionPermissions.Allowed, PdfDocumentDataExtractionPermissions.Accessibility and PdfDocumentDataExtractionPermissions.NotAllowed.
To restrict data extraction 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 data extraction permissions using the DataExtractionPermissions property.
The owner password allows a user to have full access to a document.
Note
The restrictions on data extraction, data modification, interactive, or printing operations with a PDF document can’t be applied without the owner password.
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 fro more information: Document Protection
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");
// Specify printing, data extraction, modification, and interactivity permissions.
PdfEncryptionOptions encryptionOptions = new PdfEncryptionOptions();
encryptionOptions.PrintingPermissions = PdfDocumentPrintingPermissions.Allowed;
encryptionOptions.DataExtractionPermissions = PdfDocumentDataExtractionPermissions.NotAllowed;
encryptionOptions.ModificationPermissions = PdfDocumentModificationPermissions.DocumentAssembling;
encryptionOptions.InteractivityPermissions = PdfDocumentInteractivityPermissions.Allowed;
// Specify the owner and user passwords for the document.
encryptionOptions.OwnerPasswordString = "OwnerPassword";
encryptionOptions.UserPasswordString = "UserPassword";
// 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 });
}
}
}
}
#Related GitHub Examples
The following code snippet (auto-collected from DevExpress Examples) contains a reference to the DataExtractionPermissions property.
Note
The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.