【问题标题】:Password Protection of PDF FilesPDF 文件的密码保护
【发布时间】:2010-01-09 04:48:18
【问题描述】:

我们需要使用密码保护 PDF 文件。是否有任何基于 Java 的开源工具可以在这方面为我们提供帮助?

【问题讨论】:

    标签: java pdf adobe password-protection


    【解决方案1】:

    您可以轻松地在 java 中制作受密码保护的 pdf 文件......为此,您需要两个额外的 jar/lib bctsp-jdk16-1.46.jar 和 bcprov-jdk16-1.46.jar 以及 itextpdf -5.2.1.jar.
    从这里下载所有 jars Download Jars

    下面还有sn-p的代码

    private static String USER_PASSWORD = "password";
    private static String OWNER_PASSWORD = "naveen";
    public static void main(String[] args) throws IOException {
    
        Document document = new Document();
          try
          {
    
             PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("E:\\HelloWorld.pdf"));
             writer.setEncryption(USER_PASSWORD.getBytes(),OWNER_PASSWORD.getBytes(), PdfWriter.ALLOW_PRINTING,PdfWriter.ENCRYPTION_AES_128);
             document.open();
             document.add(new Paragraph("This is Password Protected PDF document."));
             document.close();
             writer.close();
          } catch (DocumentException e)
          {
             e.printStackTrace();
          } catch (FileNotFoundException e)
          {
             e.printStackTrace();
          }
    }
    

    【讨论】:

      【解决方案2】:

      我建议使用iText java PDF 库。

      在 iText 内部,有一个名为 PdfEncrypter 的类,它可以让您使用密码保护 PDF 文件。

      【讨论】:

      • 我无法访问此链接,而且似乎已经关闭了一段时间
      • 如果您在访问 iText 主网站时遇到问题,您也可以从 sourceforge 下载代码:sourceforge.net/projects/itext
      【解决方案3】:

      【讨论】:

      • iTextSharp 是 .NET 版本 :) 我认为您的意思是 iText itextpdf.com :)
      【解决方案4】:

      【讨论】:

      • 是现有的 PDF 还是您当前正在创建的 PDF?
      • 链接中的示例适用于您当前正在创建的文件,我认为它适用于其他现有的 PDF。约书亚没有提到他在什么情况下需要加密。
      猜你喜欢
      • 2012-09-05
      • 2017-11-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-21
      • 2011-12-23
      • 2011-02-02
      相关资源
      最近更新 更多