[英]making pdf as password protected with java
我想将现有的 PDF 作为密码保护,我正在使用我正在关注此 URL 的 itext
http://howtodoinjava.com/2014/07/29/create-pdf-files-in-java-itext-tutorial/
我开发了一个程序,可以发送带有 PDF 作为附件的邮件。 下面是我将 PDF 文件设置为密码保护的代码。
现在 PDF 文件附加在邮件中,但是当我尝试打开它时,我收到一个错误,指出它已损坏。
我在下面的代码中做错了什么?
// attachment part
MimeBodyPart attachPart = new MimeBodyPart();
String filename = "c:\\SettingupRulesin outlook2003.pdf";
//OutputStream file = new FileOutputStream(new File("PasswordProtected.pdf"));
final OutputStream os = new FileOutputStream(filename);
com.itextpdf.text.Document doc = new com.itextpdf.text.Document();
PdfWriter writer = PdfWriter.getInstance(doc, os);
writer.setEncryption(USER_PASSWORD.getBytes(),
OWNER_PASSWORD.getBytes(), PdfWriter.ALLOW_PRINTING,
PdfWriter.ENCRYPTION_AES_128);
os.close();
DataSource source = new FileDataSource(filename);
attachPart.setDataHandler(new DataHandler(source));
attachPart.setFileName(filename);
您使用PdfWriter
。 该类可用于从头开始创建新的 PDF,而不是操作现有的 PDF。 请改用PdfStamper
来处理现有文档。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.