在java中使用jasper或itext可以创建不可打印的pdf吗?
问题描述:
我想用jasper创建不可打印的pdf,但是用户可以显示pdf,但是他们不能打印PDF。我不想要任何pdf密码限制。我已经研究过碧玉的文档,但是我找不到任何关于它的事情。在java中使用jasper或itext可以创建不可打印的pdf吗?
有无论如何解决我的问题?我已经感谢你的帮助。
答
可以使用的iText的PdfStamper进行后处理您的PDF:
byte[] pdfContent = /* your PDF content here */;
ByteArrayOutputStream stampedPdfContent = new ByteArrayOutputStream();
PdfReader reader = new PdfReader(pdfContent);
PdfStamper stamper = new PdfStamper(reader, stampedPdfContent);
stamper.setEncryption(null, null, ~(PdfWriter.ALLOW_PRINTING), PdfWriter.STANDARD_ENCRYPTION_128);
stamper.close();
pdfContent = stampedPdfContent.toByteArray(); // your PDF is now non printable
碧玉不允许你这样做。您可以对文件进行一些属性更改。您可以限制打印该文件。 – Lokesh