开发者

iText Java disable print pdf

We are using the following code to disable Print option in PDF. Works really well.

    PdfReader reader = new PdfReader("my-old-file.pdf");
    PdfStamper stamper = new PdfStamper(reader, new FileOutputStream("my-new-file.pdf"));
    stamper.setEncryption("my-owner-password".getBytes(), "my-user-password".getBytes(),
    PdfWriter.AllowCopy, PdfWriter.STRENGTH40BITS);
    开发者_运维问答stamper.close();

Everything was hunky dory till yesterday. We decided to update PDF Reader version to 9.3 from version 8.2 The print option is not disabled anymore! Looks like this code only works if we have Adobe Acrobat Reader 8 installed. For other versions, it does not disable the copy or print buttons.

Please help.

Thanks


I don't see Adobe simply dropping support for those security flags, but they may have grown weary of STRENGTH40BITS. I suggest you update to STRENGTH128BITS.

That or it's an Adobe Bug.

PS: The latest version of Acrobat is 9.4, you might try that version instead... long odds but worth a shot. 9.3 was a tad flaky.

Sadly, this is all guess-work on my part. Good hunting.


use the following jars:

<dependency>
    <groupId>com.itextpdf</groupId>
    <artifactId>itextpdf</artifactId>
    <version>5.3.2</version>
</dependency>
<dependency>
    <groupId>org.bouncycastle</groupId>
    <artifactId>bcprov-jdk15on</artifactId>
    <version>1.47</version>
</dependency>
<dependency>
    <groupId>org.bouncycastle</groupId>
    <artifactId>bcmail-jdk15on</artifactId>
    <version>1.47</version>
</dependency>
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜