Cum să lucrați cu fațade PDF în Java

Cum să lucrați cu fațade PDF în Java

Anotări plată

Flat all annotations into the page content stream, astfel încât să nu mai poată fi editate sau îndepărtate ca obiecte separate de anotare. Acesta este un pas comun înainte de imprimarea sau arhivarea unui document:

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

Îndepărtaţi bookmark-urile

Ștergeți toate bookmark-urile de contur dintr-un document. Bookmarks (numite și outlines) sunt intrările din arborele de navigare vizibile în barele laterale ale cititorului PDF:

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

Înlocuiți textul

Înlocuiți o șiră în toate paginile unui document. Acest lucru este util pentru completarea de spații din șabloane înainte de distribuirea unui dokument:

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

Criptați un document

Aplicați criptarea AES-256 cu permisiuni de acces folosind PdfFileSecurity.- Ce ? DocumentPrivilege.getForbidAll() Preset dezactivează toate operațiunile; permisiuni individuale poate fi apoi reactivată cu metode de setare:

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

Text extractat

Iterarea textului de pagină folosind PdfExtractor.Sună-mă. extractText() Primul procesat toate paginile, apoi recuperați textul fiecărei pagini cu getNextPageText():

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

Vezi și:

 Română