PDF文件加密是一種用來保護文件內容的功能。加密後的文檔需要提供密碼才能開啟和檢視。此功能有效防止未經授權的存取、複製和修改 PDF 文件。 Free Spire.PDF for Java支援以程式設計的方式加密和解密PDF文檔,且過程中不需要安裝第三方軟體。
程式環境
在進行操作之前,請先將jar匯入到Java程式中,請參考以下兩種導入方法:
方法一:如果您使用的是maven,可以透過新增下列程式碼到專案的pom.xml 檔案中,將jar檔匯入到應用程式中。
<repositories> <repository> <id>com.e-iceblue</id> <name>e-iceblue</name> <url>https://repo.e-iceblue.com/nexus/content/groups/public/</url> </repository> </repositories> <dependencies> <dependency> <groupId>e-iceblue</groupId> <artifactId>spire.pdf.free</artifactId> <version>5.1.0</version> </dependency> </dependencies>
方法二:如果您沒有使用maven,則可以從此連結下載Free Spire.PDF for Java,找到lib資料夾下的Spire.PDF.jar並進行解壓縮;然後在IDEA中建立一個新項目,依序點選「檔案」(File),「專案結構」(Project Structure),「元件」(Modules),「依賴項」(Dependencies),再點選右邊綠色「」下的第一個選項「jar檔或路徑」(JARs or Directories),找到解壓縮後的Spire.PDF.jar 文件,點選確認,將其匯入專案。
加密PDF文件
建立一個 PdfDocument 實例。
使用 PdfDocument.loadFromFile()方法載入PDF範例文件。
設定開啟密碼、權限密碼、加密金鑰大小和權限。
使用 PdfDocument.getSecurity().encrypt(java.lang.String openPassword, java.lang.String permissionPassword, java.util.EnumSet
使用 PdfDocument.saveToFile() 方法儲存結果文件。
import java.util.EnumSet; import com.spire.pdf.PdfDocument; import com.spire.pdf.security.PdfEncryptionKeySize; import com.spire.pdf.security.PdfPermissionsFlags; public class EncryptPDF { public static void main(String[] args) { //创建PdfDocument实例 PdfDocument pdf = new PdfDocument(); //加载PDF示例文档 pdf.loadFromFile("sample.pdf"); //加密文档 PdfEncryptionKeySize keySize = PdfEncryptionKeySize.Key_128_Bit; String openPassword = "123456"; String permissionPassword = "abcdef"; EnumSet flags = EnumSet.of(PdfPermissionsFlags.Print, PdfPermissionsFlags.Fill_Fields); pdf.getSecurity().encrypt(openPassword, permissionPassword, flags, keySize); //保存文档 pdf.saveToFile("Encrypt.pdf"); pdf.close(); } }
解密PDF文件
建立一個PdfDocument 實例。
使用PdfDocument.loadFromFile(java.lang.String filename, java.lang.String password) 方法載入加密PDF文件。
透過使用PdfDocument.getSecurity().encrypt(java.lang.String openPassword, java.lang.String permissionPassword, java.util.EnumSet
使用PdfDocument.saveToFile()方法儲存結果檔案。
import com.spire.pdf.PdfDocument; import com.spire.pdf.security.PdfEncryptionKeySize; import com.spire.pdf.security.PdfPermissionsFlags; public class DecryptPDF { public static void main(String[] args) throws Exception { //创建PdfDocument实例 PdfDocument pdf = new PdfDocument(); //加载加密文档 pdf.loadFromFile("Encrypt.pdf", "123456"); //解密文档 pdf.getSecurity().encrypt("", "", PdfPermissionsFlags.getDefaultPermissions(), PdfEncryptionKeySize.Key_256_Bit, "abcdef"); //保存文档 pdf.saveToFile("Decrypt.pdf"); pdf.close(); }
以上是Java實作PDF文件的加密或解密方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本文討論了使用Maven和Gradle進行Java項目管理,構建自動化和依賴性解決方案,以比較其方法和優化策略。

本文使用Maven和Gradle之類的工具討論了具有適當的版本控制和依賴關係管理的自定義Java庫(JAR文件)的創建和使用。

本文討論了使用咖啡因和Guava緩存在Java中實施多層緩存以提高應用程序性能。它涵蓋設置,集成和績效優勢,以及配置和驅逐政策管理最佳PRA

本文討論了使用JPA進行對象相關映射,並具有高級功能,例如緩存和懶惰加載。它涵蓋了設置,實體映射和優化性能的最佳實踐,同時突出潛在的陷阱。[159個字符]

Java的類上載涉及使用帶有引導,擴展程序和應用程序類負載器的分層系統加載,鏈接和初始化類。父代授權模型確保首先加載核心類別,從而影響自定義類LOA


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能