Làm thế nào để làm việc với PDF Facades trong Java

Làm thế nào để làm việc với PDF Facades trong Java

Annotic Flat

Đặt tất cả các ghi chú vào dòng nội dung trang để chúng không còn có thể chỉnh sửa hoặc xóa như các đối tượng ghi lại riêng biệt. đây là một bước phổ biến trước khi in hoặc lưu trữ tài liệu:

try (PdfAnnotationEditor editor = new PdfAnnotationEditor()) {
    editor.bindPdf("annotated.pdf");
    editor.flattenAnnotations();
    editor.save("flat.pdf");
}

Xóa Bookmarks

Xóa tất cả các dấu sách xuất bản từ một tài liệu. Các dấu sổ (cũng được gọi là dấu hiệu xuất sắc) là những bài đăng cây di chuyển có thể nhìn thấy trong bảng điều khiển PDF:

try (PdfBookmarkEditor editor = new PdfBookmarkEditor()) {
    editor.bindPdf("input.pdf");
    editor.deleteBookmarks();
    editor.save("no-bookmarks.pdf");
}

Thay thế văn bản

Thay thế một dòng trên tất cả các trang của tài liệu. Điều này hữu ích để điền vào các vị trí mẫu trước khi phân phối tài khoản:

try (PdfContentEditor editor = new PdfContentEditor()) {
    editor.bindPdf("template.pdf");
    editor.replaceText("{{Date}}", "2026-05-24");
    editor.save("output.pdf");
}

mã hóa một tài liệu

Ứng dụng AES-256 mã hóa với quyền truy cập sử dụng PdfFileSecurity.The DocumentPrivilege.getForbidAll() Preset chặn tất cả các hoạt động; giấy phép cá nhân Sau đó có thể được bật lại với phương pháp setter:

try (PdfFileSecurity security = new PdfFileSecurity("input.pdf", "secured.pdf")) {
    DocumentPrivilege priv = DocumentPrivilege.getForbidAll();
    priv.setAllowPrint(true);
    security.encryptFile("user", "owner", priv, KeySize.x256);
}

Đọc trích dẫn

Iterate trên page text sử dụng PdfExtractor.gọi điện extractText() Đầu tiên là xử lý tất cả các trang, sau đó lấy lại văn bản của mỗi trang với getNextPageText():

try (PdfExtractor extractor = new PdfExtractor()) {
    extractor.bindPdf("document.pdf");
    extractor.extractText();
    while (extractor.hasNextPageText()) {
        String text = extractor.getNextPageText();
        System.out.println(text);
    }
}

See Also

 Tiếng Việt