我正在尝试创建一个可读的pdf,可以用2个不同的密码打开(并加密).我还希望pdf有超过1个权限:打印和屏幕阅读.
我怎样才能做到这一点?我尝试过:
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)
Run Code Online (Sandbox Code Playgroud)
但显然它只需要第二次许可,所以我必须做什么?
请参阅此示例: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);
权限是位标志,因此您可以对它们进行逻辑OR以添加多个权限.
| 归档时间: |
|
| 查看次数: |
229 次 |
| 最近记录: |