PDFBox 2.0.0 - 使用密码解密

时间:2016-04-12 17:25:56

标签: java pdfbox

我尝试使用PDFBox 2.0.0的密码解锁PDF。

在1.8.11中,我使用的是PDDocument.openProtection(DecryptionMaterial pm)方法,但我在2.0.0中删除了该内容。

online documentation没有说明如何在2.0.0中实现这一目标。

问题:

PDFBox 2.0.0中仍然可以使用密码解锁PDF?

2 个答案:

答案 0 :(得分:5)

在2.0中,您只需拨打PDDocument.load(file, password)PDDocument.load(file)(如果密码为空)。您不必再打电话给openProtection()了。 load()的2.0通话类似于1.8的loadNonSeq()通话。

答案 1 :(得分:0)

我使用了带有以下代码的最新版本:

  PDDocument pd = PDDocument.load(ResourceUtils.getFile("[Your_File_Path]"), "[Your_Password]");
  pd.setAllSecurityToBeRemoved(true);
  pd.save("[New_FileName.pdf]");

pom.xml

<dependency>
        <groupId>org.apache.pdfbox</groupId>
        <artifactId>pdfbox</artifactId>
        <version>2.0.22</version>
    </dependency>
    <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcprov-jdk15on</artifactId>
        <version>1.68</version>
    </dependency>
    <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcmail-jdk15on</artifactId>
        <version>1.68</version>
    </dependency>