java 对PDF文件进行密码加密

java 对PDF文件进行密码加密

添加 pom 依赖

        <dependency>
            <groupId>com.itextpdf</groupId>
            <artifactId>itextpdf</artifactId>
            <version>5.5.13</version>
        </dependency>

对pdf文件加密

    private static boolean pdfEncrypt(String filePath, String savePath, String password){
        try{
            com.itextpdf.text.pdf.PdfReader reader = new com.itextpdf.text.pdf.PdfReader(filePath);
            com.itextpdf.text.pdf.PdfStamper stamper = new com.itextpdf.text.pdf.PdfStamper(reader, new FileOutputStream(savePath));
            // 设置密码
            stamper.setEncryption(password.getBytes(),password.getBytes(), com.itextpdf.text.pdf.PdfWriter.ALLOW_PRINTING, com.itextpdf.text.pdf.PdfWriter.ENCRYPTION_AES_128);
            stamper.close();
            reader.close();
            logger.debug("pdfEncrypt-加密成功");
            return true;
        }catch (Exception e){
            e.printStackTrace();
            logger.error("对【{}】文件加密处理异常:{}",filePath,e.getMessage());
            return false;
        }
    }

main 测试

    public static void main(String[] args) {
        String filePath = "D:\\liang/office加密/pdf加密-前-1.pdf";
        String savePath = "D:\\liang/office加密/pdf加密-后-1.pdf";
        String password = "123";
        pdfEncrypt(filePath,savePath,password);
    }

加密示例
java 对PDF文件进行密码加密_第1张图片
在这里插入图片描述

你可能感兴趣的:(工具,java,itext,java,java加密PDF文件)