我正在使用飞碟从XHTML生成PDF。呈现效果很好,但是任何用密码保护PDF文档的尝试均会失败,并显示Exception。
我正在使用https://stackoverflow.com/a/46024498/4517737中Ajit Soman建议的代码。代码副本如下所示。 如果取消注释注释行,则在“ renderer.createPDF(os,false)”行中引发异常。
例外是
“线程
对于纯Java,异常为“ 线程“主”中的异常” java.lang.NoClassDefFoundError:org / bouncycastle / asn1 / ASN1Encodable 在com.itextpdf.text.pdf.PdfEncryption。(PdfEncryption.java:147).... 由以下原因引起:java.lang.ClassNotFoundException:org.bouncycastle.asn1.ASN1Encodable “
final File outputFile = File.createTempFile(fileName, ".pdf");
FileOutputStream os = new FileOutputStream(outputFile);
PDFEncryption pdfEncryption = new PDFEncryption();
String password= "password@123";
pdfEncryption.setUserPassword(password.getBytes());
ITextRenderer renderer = new ITextRenderer();
// the following line causes Exception
// renderer.setPDFEncryption(pdfEncryption);
renderer.setDocumentFromString(htmlContent);
renderer.layout();
renderer.createPDF(os, false);
renderer.finishPDF();
请帮助。