Разрешить более 1 разрешения на шифрование itext - PullRequest
0 голосов
/ 23 мая 2018

Я пытаюсь создать читаемый PDF-файл, который может быть открыт с двумя разными паролями (и зашифрован).Я также хочу, чтобы у pdf было более одного разрешения: печать и заставки.

Как я могу это сделать?Я пробовал с:

    ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
    PdfWriter writer = PdfWriter.getInstance(document,byteArrayOutputStream);
    writer.setPdfVersion(PdfWriter.VERSION_1_7);
    writer.setEncryption(firstPass, secondPass, PdfWriter.ALLOW_PRINTING, PdfWriter.ENCRYPTION_AES_256);
    writer.setEncryption(firstPass, secondPass, PdfWriter.ALLOW_SCREENREADERS, PdfWriter.ENCRYPTION_AES_256)

Но очевидно, что требуется только второе разрешение, так что мне делать?

1 Ответ

0 голосов
/ 23 мая 2018

См. Этот пример: https://developers.itextpdf.com/examples/itext-action-second-edition/chapter-12#474-encryptionpdf.java

В частности, эта строка:

stamper.setEncryption(USER, OWNER,PdfWriter.ALLOW_PRINTING,PdfWriter.ENCRYPTION_AES_128 | PdfWriter.DO_NOT_ENCRYPT_METADATA);

Разрешения являются битовыми флагами, поэтому вы можете логически ИЛИ их добавлять несколькоразрешения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...