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.