Fasady PDF

Ten przewodnik pokazuje, jak używać klas fasady skoncentrowanych na zadaniach w pakiecie org.aspose.pdf.facades. Każda fasada podąża za tym samym cyklem życia: bindPdf() → operacje → save(). Nauczysz się spłaszczać adnotacje, zarządzać zakładkami, zastępować tekst, szyfrować dokumenty, wyodrębniać tekst i dodawać numery stron.

Wzorzec fasady

Wszystkie klasy fasady w org.aspose.pdf.facades podążają za tym samym cyklem życia: bindPdf() → operacje → save(). Akceptują ścieżki plików, strumienie lub obiekty Document.

PdfAnnotationEditor

Spłaszcz, usuń lub zlicz adnotacje w całym dokumencie. flattenAnnotations() scala wszystkie adnotacje do strumienia zawartości strony, czyniąc je trwałymi i nieedytowalnymi:

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

deleteAnnotations(annotationType) usuwa określony typ adnotacji po nazwie.

PdfBookmarkEditor

Tworzenie i usuwanie wpisów konspektu PDF (zakładek). deleteBookmarks() usuwa wszystkie wpisy konspektu z połączonego dokumentu przed zapisaniem:

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

PdfContentEditor

Zamień tekst w strumieniach zawartości PDF w całym dokumencie lub na konkretnej stronie. replaceText(searchString, replacement) wyszukuje i zamienia wszystkie pasujące ciągi tekstowe:

try (PdfContentEditor editor = new PdfContentEditor()) {
    editor.bindPdf("template.pdf");
    editor.replaceText("{{Name}}", "John Smith");
    editor.save("output.pdf");
}

PdfFileSecurity

Zaszyfruj dokument przy użyciu AES-256 i ustaw uprawnienia dostępu za pomocą DocumentPrivilege. encryptFile(userPass, ownerPass, privilege, keySize) stosuje szyfrowanie i zapisuje wynik do skonfigurowanego pliku wyjściowego:

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

PdfExtractor

Wyodrębnij tekst strona po stronie z dokumentu PDF. Po wywołaniu extractText(), użyj hasNextPageText() i getNextPageText(), aby iterować zawartość wyodrębnioną z każdej strony:

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

PdfFileStamp

Dodaj pieczątki z numerami stron do stron PDF przy użyciu addPageNumber(FormattedText). Przekaż instancję FormattedText zawierającą etykietę numeru strony:

try (PdfFileStamp stamp = new PdfFileStamp("in.pdf", "out.pdf")) {
    stamp.addPageNumber(new FormattedText("Page #"));
    stamp.close();
}

Użyj addHeader(FormattedText, float) lub addFooter(FormattedText, float), aby dodać powtarzający się tekst w określonej odległości od góry lub dołu każdej strony.

Zobacz także

 Polski