У цій статті ви знайдете покроковий посібник і зразки коду для програмного шифрування та розшифрування файлів PDF у Java.
У різних випадках документи PDF шифруються перед тим, як надати їм доступ зацікавленим сторонам. Шифрування захищає документ від несанкціонованого доступу, а також від зміни вмісту. Існує кілька популярних способів захисту PDF-документів – шифрування PDF-файлів паролем або обмеження прав доступу користувача, як-от друк, редагування, копіювання тощо. У цій статті показано, як зашифрувати або розшифрувати PDF-файл у Java. Крім того, ви дізнаєтеся, як обмежити права користувача в PDF-документі.
- Бібліотека Java для шифрування або розшифрування PDF
- Шифруйте файл PDF за допомогою Java
- Розшифруйте файл PDF за допомогою Java
- Змініть дозволи безпеки в PDF за допомогою Java
Бібліотека Java для шифрування або розшифрування PDF – безкоштовно завантажити
Aspose.PDF for Java — це багатофункціональна бібліотека обробки PDF-файлів, яка дозволяє легко працювати з шифруванням і дешифруванням PDF-файлів. Крім того, він дозволяє змінювати привілеї користувача в документах PDF програмним шляхом. Ви можете завантажити бібліотеку безкоштовно або встановити її за допомогою наведених нижче конфігурацій Maven.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>22.12</version>
<classifier>jdk17</classifier>
</dependency>
Зашифруйте PDF-файл у Java
Для шифрування документа PDF потрібно встановити пароль, який використовуватиметься для відкриття та доступу до документа. Крім того, ви можете вибрати один із наведених нижче криптографічних алгоритмів, які будуть використовуватися під час шифрування.
Нижче наведено кроки для шифрування PDF-файлу в Java.
- Завантажте PDF-документ за допомогою класу Document.
- Зашифруйте PDF за допомогою методу Document.encrypt(“userpassword”, “ownerpassword”, 0, CryptoAlgorithm).
- Збережіть зашифрований PDF за допомогою методу Document.save(string).
У наведеному нижче прикладі коду показано, як зашифрувати PDF-документ за допомогою Java.
// Щоб отримати повні приклади та файли даних, перейдіть на сторінку https://github.com/aspose-pdf/Aspose.Pdf-for-Java
// відкритий документ
Document document = new Document("input.pdf");
// зашифрувати PDF
document.encrypt("user", "owner", 0, CryptoAlgorithm.AESx256);
// зберегти оновлений PDF
document.save("Encrypted_output.pdf");
Коли ви відкриваєте зашифрований PDF-файл, з’являється таке діалогове вікно.
Розшифруйте PDF-файл у Java
Для розшифровки зашифрованого документа PDF потрібен пароль користувача або власника. Нижче наведено кроки для розшифровки PDF-файлу в Java.
- Завантажте зашифрований PDF за допомогою класу Document, вказавши пароль у конструкторі.
- Викличте метод Document.decrypt(), щоб розшифрувати PDF.
- Збережіть розшифрований PDF-документ за допомогою методу Document.save(string).
У наведеному нижче прикладі коду показано, як розшифрувати зашифрований PDF-файл за допомогою Java.
// Щоб отримати повні приклади та файли даних, перейдіть на сторінку https://github.com/aspose-pdf/Aspose.Pdf-for-Java
// відкритий документ
Document document = new Document("input.pdf", "password");
// розшифрувати PDF
document.decrypt();
// зберегти оновлений PDF
document.save("output.pdf");
Змініть дозволи безпеки в PDF за допомогою Java
Ви також можете обмежити доступ користувача для виконання різних операцій під час шифрування документів PDF. Нижче наведено дозволи, які ви можете встановити.
- Друкувати документ – дозволяє друкувати документ.
- Змінити вміст – дозволяє змінювати вміст.
- Витягти вміст – дозволяє копіювати вміст із документа.
- Змінити текстові анотації – дозволяє додавати або оновлювати текстові анотації.
- Заповнити форму – дозволяє заповнювати поля інтерактивної форми.
- Витяг вмісту з обмеженими можливостями – дозволяє видобувати текст і графіку (для користувачів з обмеженими можливостями).
- Зберіть документ – дозволяє вставляти, повертати або видаляти сторінки та створювати закладки чи мініатюри зображень.
- Якість друку – дозволяє друкувати документи з високою роздільною здатністю.
Нижче наведено кроки для встановлення або зміни дозволів у PDF-документі.
- Завантажте PDF за допомогою класу Document.
- Використовуйте клас DocumentPrivilege, щоб установити дозволи.
- Зашифруйте PDF-файл і збережіть його, як ви робили в попередніх прикладах.
У наведеному нижче прикладі коду показано, як змінити дозволи в PDF-документі за допомогою Java.
// Щоб отримати повні приклади та файли даних, перейдіть на сторінку https://github.com/aspose-pdf/Aspose.Pdf-for-Java
Document document = new Document("inputFile.pdf");
try /* JAVA: was using */
{
DocumentPrivilege documentPrivilege = DocumentPrivilege.getForbidAll();
documentPrivilege.setAllowScreenReaders(true);
documentPrivilege.setAllowPrint(true);
document.encrypt("user", "owner", documentPrivilege, CryptoAlgorithm.AESx128, false);
document.save("outputFile.pdf");
} finally {
if (document != null)
document.dispose();
}
Нижче наведено дозволи для зашифрованого файлу PDF.
Безкоштовна бібліотека Java для шифрування PDF
Ви можете отримати безкоштовну тимчасову ліцензію і шифрувати або розшифровувати PDF-файли без будь-яких обмежень.
Дослідіть бібліотеку Java PDF
Ви можете вивчити та дізнатися більше про бібліотеку Java PDF за допомогою документації.
Висновок
У цій статті ви дізналися, як шифрувати або розшифровувати PDF-файли в Java. Крім того, ви бачили, як програмно змінити привілеї користувача в PDF-документі в Java. Ви можете легко використовувати надані зразки коду у своїх програмах Java.