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);
    }

加密示例
加密後的文件打開需輸入密碼
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章