Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
Следующий фрагмент кода также работает с библиотекой Aspose.PDF.Drawing.
Чтобы установить привилегии на PDF файл, создайте объект класса DocumentPrivilege и укажите права, которые вы хотите применить к документу. После определения привилегий передайте этот объект в качестве аргумента методу Encrypt объекта Document. Следующий фрагмент кода показывает, как установить привилегии PDF файла.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void SetPrivilegesOnExistingPdfFile()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
{
// Instantiate Document Privileges object
// Apply restrictions on all privileges
var documentPrivilege = Aspose.Pdf.Facades.DocumentPrivilege.ForbidAll;
// Only allow screen reading
documentPrivilege.AllowScreenReaders = true;
// Encrypt the file with User and Owner password
// Need to set the password, so that once the user views the file with user password
// Only screen reading option is enabled
document.Encrypt("user", "owner", documentPrivilege, Aspose.Pdf.CryptoAlgorithm.AESx128, false);
// Save PDF document
document.Save(dataDir + "SetPrivileges_out.pdf");
}
}
Вы можете использовать метод Encrypt объекта Document для шифрования PDF файла. Вы можете передать пароль пользователя, пароль владельца и разрешения в метод Encrypt. Кроме того, вы можете передать любое значение перечисления CryptoAlgorithm. Это перечисление предоставляет различные комбинации алгоритмов шифрования и размеров ключей. Вы можете передать значение по вашему выбору. Наконец, сохраните зашифрованный PDF файл с помощью метода Save объекта Document.
Пожалуйста, укажите разные пароли пользователя и владельца при шифровании PDF файла.
Следующий фрагмент кода показывает, как зашифровать PDF файлы.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void EncryptPdfFile()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "Encrypt.pdf"))
{
// Encrypt PDF
document.Encrypt("user", "owner", 0, Aspose.Pdf.CryptoAlgorithm.RC4x128);
// Save PDF document
document.Save(dataDir + "Encrypt_out.pdf");
}
}
Все чаще пользователи обмениваются PDF файлами с шифрованием, чтобы предотвратить несанкционированный доступ к документам, таким как печать/копирование/обмен/извлечение информации о содержимом PDF файла. Сегодня это лучший выбор для шифрования PDF файла, поскольку он сохраняет конфиденциальность и целостность содержимого. В этом отношении существует необходимость доступа к зашифрованному PDF файлу, поскольку такой доступ может быть получен только авторизованным пользователем. Также люди ищут различные решения для расшифровки PDF файлов в Интернете.
Лучше решить эту проблему один раз, используя библиотеку Aspose.PDF.
Чтобы расшифровать PDF файл, вам сначала нужно создать объект Document и открыть PDF с использованием пароля владельца. После этого вам нужно вызвать метод Decrypt объекта Document. Наконец, сохраните обновленный PDF файл с помощью метода Save объекта Document. Следующий фрагмент кода показывает, как расшифровать PDF файл.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void DecryptPdfFile()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();
// Open PDF document with password
using (var document = new Aspose.Pdf.Document(dataDir + "Decrypt.pdf", "password"))
{
// Decrypt PDF
document.Decrypt();
// Save PDF document
document.Save(dataDir + "Decrypt_out.pdf");
}
}
Если вы хотите изменить пароль PDF файла, вам сначала нужно открыть PDF файл с использованием пароля владельца с помощью объекта Document. После этого вам нужно вызвать метод ChangePasswords объекта Document. Вам нужно передать текущий пароль владельца вместе с новым паролем пользователя и новым паролем владельца в этот метод. Наконец, сохраните обновленный PDF файл с помощью метода Save объекта Document.
- Пароль пользователя, если установлен, это то, что вам нужно предоставить для открытия PDF. Acrobat/Reader предложит пользователю ввести пароль пользователя. Если он неверный, документ не откроется.
- Пароль владельца, если установлен, контролирует разрешения, такие как печать, редактирование, извлечение, комментирование и т.д. Acrobat/Reader запретит эти действия в зависимости от настроек разрешений. Acrobat потребует этот пароль, если вы хотите установить/изменить разрешения.
Следующий фрагмент кода показывает, как изменить пароль PDF файла.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ChangePassword()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();
// Open PDF document with password
using (var document = new Aspose.Pdf.Document(dataDir + "ChangePassword.pdf", "owner"))
{
// Change password
document.ChangePasswords("owner", "newuser", "newowner");
// Save PDF document
document.Save(dataDir + "ChangePassword_out.pdf");
}
}
Aspose.PDF for .NET предоставляет отличные возможности работы с PDF документами. При использовании класса Document пространства имен Aspose.PDF для открытия PDF документа, который защищен паролем, нам нужно предоставить информацию о пароле в качестве аргумента конструктору Document, и в случае, если эта информация не предоставлена, генерируется сообщение об ошибке. На самом деле, при попытке открыть PDF файл с помощью объекта Document, конструктор пытается прочитать содержимое PDF файла, и в случае, если правильный пароль не предоставлен, генерируется сообщение об ошибке (это происходит для предотвращения несанкционированного доступа к документу).
При работе с зашифрованными PDF файлами вы можете столкнуться со сценарием, когда вам будет интересно определить, есть ли у PDF открытый пароль и/или пароль для редактирования. Иногда есть документы, которые не требуют информации о пароле при их открытии, но требуют информации для редактирования содержимого файла. Поэтому, чтобы удовлетворить вышеуказанные требования, класс PdfFileInfo, представленный в Aspose.PDF.Facades, предоставляет свойства, которые могут помочь в определении необходимой информации.
PdfFileInfo содержит три свойства для получения информации о безопасности PDF документа.
Иногда возникает необходимость определить правильный пароль из массива паролей и открыть документ с правильным паролем. Следующий фрагмент кода демонстрирует шаги для перебора массива паролей и попытки открыть документ с правильным паролем.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void DetermineCorrectPasswordFromArray()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();
using (var info = new Aspose.Pdf.Facades.PdfFileInfo())
{
// Bind PDF document
info.BindPdf(dataDir + "IsPasswordProtected.pdf");
// Determine if the source PDF is encrypted
Console.WriteLine("File is password protected " + info.IsEncrypted);
String[] passwords = new String[5] { "test", "test1", "test2", "test3", "sample" };
for (int passwordcount = 0; passwordcount < passwords.Length; passwordcount++)
{
try
{
using (var document = new Aspose.Pdf.Document(dataDir + "IsPasswordProtected.pdf", passwords[passwordcount]))
{
if (document.Pages.Count > 0)
{
Console.WriteLine("Number of Page in document are = " + document.Pages.Count);
}
}
}
catch (Aspose.Pdf.InvalidPasswordException)
{
Console.WriteLine("Password = " + passwords[passwordcount] + " is not correct");
}
}
}
}
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.