PDF处理控件Aspose.PDF功能演示:使用Java加密和解密PDF文件
在各种情况下,在利益相关者之间共享之前,PDF文档都是经过加密的。加密使文档免受未经授权的访问和内容篡改的影响。有两种保护PDF文档安全的流行方法-用密码加密PDF或限制用户的访问权限,例如打印,编辑,复制等。
本文演示了如何使用Java加密或解密PDF文档。此外,还将学习如何限制PDF文档中用户的权限。
- 使用Java加密PDF文件
- 使用Java解密PDF文件
- 使用Java更改PDF中的安全权限
目前,Java版Aspose.PDF升级到v20.10版,添加签名,而不考虑pdf页面的旋转,修复XPS转换为PDF错误等诸多bug问题,感兴趣的朋友可点击下方按钮下载最新版。
使用Java加密PDF文件
PDF文档的加密要求您设置一个密码,该密码将用于打开和访问该文档。除此之外,您可以选择以下加密算法之一。
- 带40位密钥的RC4
- 带128位密钥的RC4
- 带有128位密钥的AES
- 带有256位密钥的AES
以下是使用Aspose.PDF for Java加密PDF文档的步骤。
- 使用Document类加载PDF文档。
- 使用Document.encrypt(“ user_password”,“ owner_password”,0,CryptoAlgorithm)方法对PDF进行加密。
- 使用Document.save(string)方法保存加密的PDF 。
以下代码示例显示了如何使用Java加密PDF文档。
// open document Document document = new Document("input.pdf"); // encrypt PDF document.encrypt("user", "owner", 0, CryptoAlgorithm.AESx256); // save updated PDF document.save("Encrypted_output.pdf");
当打开加密的PDF时,将出现以下对话框。
使用Java解密PDF文件
加密的PDF文档的解密需要用户或所有者的密码。以下是使用Aspose.PDF for Java解密PDF文档的步骤。
- 通过在构造函数中指定密码,使用Document类加载加密的PDF 。
- 调用 Document.decrypt() 方法解密PDF。
- 使用Document.save(string)方法保存解密的PDF文档。
以下代码示例显示了如何使用Java解密加密的PDF。
// open document Document document = new Document("input.pdf", "password"); // decrypt PDF document.decrypt(); // save updated PDF document.save("output.pdf");
使用Java更改PDF中的安全权限
可以在加密PDF文档时限制用户的访问权限以执行不同的操作。以下是可以设置的权限。
- 打印文档 –允许打印文档。
- 修改内容 –允许修改内容。
- 提取内容 –允许从文档中复制内容。
- 修改文本注释 –允许添加或更新文本注释。
- 填写表格 –允许填写交互式表格字段。
- 提取具有残疾的内容 –允许提取文本和图形(适用于残疾用户)。
- 组装文档 –允许插入,旋转或删除页面以及创建书签或缩略图。
- 打印质量 –允许高分辨率打印文档。
以下是设置或修改PDF文档中的权限的步骤。
- 使用Document类加载PDF 。
- 使用DocumentPrivilege类设置权限。
- 加密PDF并将其保存,就像前面的示例一样。
以下代码示例显示了如何使用Java修改PDF文档中的权限。
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文件中的权限。
还想要更多吗?您可以点击阅读【2020 · Aspose最新资源整合】,查找需要的教程资源。如果您有任何疑问或需求,请随时加入Aspose技术交流群(642018183),我们很高兴为您提供查询和咨询。