PDF文档加密是一种用来保护文件内容的功能。加密文档需要密码才能打开和查看。此功能有效防止未经授权访问、复制和修改PDF文件。FreeSpire.PDFforJava支持对PDF文档进行程序化加解密,过程中无需安装第三方软件。详细操作步骤及相关代码请参考以下内容。在运行程序环境之前,请先将jar导入到Java程序中。请参考以下两种导入方法:方法一:如果你使用的是maven,可以在项目的pom.xml文件中添加如下代码。jar文件到应用程序中。<存储库><存储库>com.e-icebluee-icebluehttps://repo.e-iceblue.com/nexus/content/groups/public/e-icebluespire.pdf.free5.1.0方法二:如果你没有使用maven,可以从这个链接下载FreeSpire.PDFforJava,在lib文件夹中找到Spire.PDF.jar并解压;然后在IDEA中新建一个项目,依次点击“File”、“ProjectStructure”、“Modules”、“Dependencies”,然后点击右侧绿色“+”下的第一个,选择“jarfileorpath”(JARsorDirectories),找到解压后的Spire.PDF.jar文件,点击确定导入到项目中。加密PDF文档?创建一个PdfDocument实例。?使用PdfDocument.loadFromFile()方法加载示例PDF文档。?设置打开密码、权限密码、加密密钥大小和权限。?使用PdfDocument.getSecurity().encrypt(java.lang.StringopenPassword,java.lang.StringpermissionPassword,java.util.EnumSetpermissions,PdfEncryptionKeySizekeySize)方法加密PDF文件。?使用PdfDocument.saveToFile()方法保存生成的文档。导入java.util.EnumSet;导入com.spire.pdf.PdfDocument;导入com.spire.pdf.security.PdfEncryptionKeySize;导入com.spire.pdf.security.PdfPermissionsFlags;公共类EncryptPDF{publicstaticvoidmain(String[]args){//创建PdfDocument实例PdfDocumentpdf=newPdfDocument();//加载PDF示例文档pdf.loadFromFile("sample.pdf");//加密文档PdfEncryptionKeySizekeySize=PdfEncryptionKeySize.Key_128_Bit;字符串openPassword="123456";String权限密码="abcdef";EnumSetflags=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.Stringfilename,java.lang.Stringpassword)方法加载加密的PDF文档。?使用PdfDocument.getSecurity().encrypt(java.lang.StringopenPassword,java.lang.StringpermissionPassword,java.util.EnumSetpermissions,PdfEncryptionKeySizekeySize,java.lang.StringoriginalPermissionPassword)方法解密PDF文件。?使用PdfDocument.saveToFile()方法保存生成的文件。导入com.spire.pdf.PdfDocument;导入com.spire.pdf.security.PdfEncryptionKeySize;导入com.spire.pdf.security.PdfPermissionsFlags;公共类DecryptPDF{publicstaticvoidmain(String[]args)throwsException{//创建PdfDocument实例PdfDocumentpdf=newPdfDocument();//加载加密文档pdf.loadFromFile("Encrypt.pdf","123456");//解密文档pdf.getSecurity().encrypt("","",PdfPermissionsFlags.getDefaultPermissions(),PdfEncryptionKeySize.Key_256_Bit,"abcdef");//保存文档pdf.saveToFile("Decrypt.pdf");pdf.close();}