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),我們很高興為您提供查詢和咨詢。