importjava.io.FileOutputStream;
importcom.lowagie.text.pdf.PdfEncryptor;
importcom.lowagie.text.pdf.PdfReader;
importcom.lowagie.text.pdf.PdfStamper;
importcom.lowagie.text.pdf.PdfWriter;
publicclassMainClass{
publicstaticvoidmain(String[]args)throwsException{
PdfReaderreader=newPdfReader("1.pdf");
PdfStamperstamper=newPdfStamper(reader,newFileOutputStream("Encrypted1.pdf"));
stamper.setEncryption("Hello".getBytes(),"World".getBytes(),PdfWriter.AllowPrinting
|PdfWriter.AllowCopy,PdfWriter.STRENGTH40BITS);
stamper.close();
getEncryptionInformation("1.pdf",null);
getEncryptionInformation("Encrypted1.pdf","World");
}
publicstaticvoidgetEncryptionInformation(Stringfilename,Stringownerpassword)
throwsException{
PdfReaderreader;
if(ownerpassword==null)
reader=newPdfReader(filename);
else
reader=newPdfReader(filename,ownerpassword.getBytes());
System.out.println("Encrypted?"+reader.isEncrypted());
if(reader.isEncrypted()){
System.out.println("Permissions:"
+PdfEncryptor.getPermissionsVerbose(reader.getPermissions()));
System.out.println("128bit?"+reader.is128Key());
}
}
}java 获取PDF加密信息
最新推荐文章于 2024-04-18 10:17:12 发布
本文介绍了一个使用Java实现的PDF文件加密示例。通过Lowagie库对PDF进行加密处理,并验证加密后的文件是否能正确打开及权限状态。演示了如何设置密码保护级别和允许的操作类型。
5070

被折叠的 条评论
为什么被折叠?



