Facade sloj u Aspose. PDF FOSS za Java
Aspose.PDF FOSS for Java includes a facades layer — a set of high-level, task-focused Klasi koje pružaju ciljne operacije na PDF dokumentima bez potrebe za navigacijom. Svaki fasadni razred slijedi isti obrazac: veže se s dokument, obavljati operacije, sačuvati rezultat.
Sve fasade klase nalaze se u org.aspose.pdf.facades pakiranje:
import org.aspose.pdf.facades.*;
PdfAnnotationEditor: Ravnoteži i ukloni Anotate
PdfAnnotationEditor U ovom članku se navode sljedeće informacije: ravnim ih u sadržaj stranice, uklanjanje svih bilješki ili ukidanje specifične vrste anotiranja po imenu.
try (PdfAnnotationEditor editor = new PdfAnnotationEditor()) {
editor.bindPdf("annotated.pdf");
// Flatten all annotations into the page content stream
editor.flattenAnnotations();
editor.save("flat.pdf");
}
U skladu s člankom 1. deleteAnnotations(annotationType) Preopterećenje prihvaća niz tipa opisa kao što su: "Highlight" ili: "Widget" da se uklone samo takve bilješke. countAnnotations() vraća ukupni broj anotiranja na svim stranicama.
PdfBookmarkEditor: Stvaranje i brisanje stranica za stavljanje na stranicu
PdfBookmarkEditor upravlja PDF drvećem (bookmarkovi). Pokazuje metode za stvaranje novih stavki s: createBookmarks(), brisanje svih zalagatelja s: deleteBookmarks(), i uklanjanje zalagatelja po naslovu s: deleteBookmarkByTitle().
try (PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor()) {
bookmarkEditor.bindPdf("input.pdf");
// Remove all bookmarks from the document
bookmarkEditor.deleteBookmarks();
bookmarkEditor.save("no-bookmarks.pdf");
}
U skladu s člankom 1. bindPdf(document) Preopterećenje prihvaća: Document direktno, omogućavajući U slučaju da je to moguće, mora se koristiti u sustavima za upravljanje informacijama.
PdfContentEditor: zamjena teksta
PdfContentEditor Podržava namjerno zamjenjivanje teksta u PDF strimovima sadržaja. replaceText(searchText, replaceText) zamjenjuje sve pojave nizka. u cijelom dokumentu; replaceText(searchText, pageNumber, replaceText) ograničava zamjenu na jednu stranicu.
try (PdfContentEditor contentEditor = new PdfContentEditor()) {
contentEditor.bindPdf("template.pdf");
contentEditor.replaceText("{{CompanyName}}", "Acme Corp");
contentEditor.save("output.pdf");
}
TextReplaceOptions kontrolira se da li zamjena treba sačuvati originalni proizvod. font i veličina ili naslijediti svojstva teksta od okružnog sadržaja. getStamps(pageNumber) povratni podaci StampInfo predmet za sve marke na stranici, i u članku 1. deleteStampById() Odstupanje od oznake “S”.
PdfFileSecurity: Enkripcija i dozvole
PdfFileSecurity Upravlja sigurnosnim sustavom na razini dokumenata, uključujući šifriranje i dekriptovanje., Konstruktor varijante prihvaćaju putove datoteke, tokove ili postojećih Document primjerak uz izlaz odredišta.
DocumentPrivilege označava pristupne dozvole za šifrirani dokument. Upotreba: DocumentPrivilege.getForbidAll() da se odbiju sve operacije korisnika, ili DocumentPrivilege.getAllowAll() Da odobri potpuni pristup.
try (PdfFileSecurity security = new PdfFileSecurity("input.pdf", "secured.pdf")) {
DocumentPrivilege privilege = DocumentPrivilege.getForbidAll();
privilege.setAllowPrint(true);
security.encryptFile("userPass", "ownerPass", privilege, KeySize.x256);
}
decryptFile(ownerPassword) uklanja šifriranje kada je poznata lozinka vlasnika. U skladu s člankom 1. Algorithm enum sadrži: RC4 i u članku 1. AES “svrha” znači:; KeySize specifično dužinu ključa.
PdfFileStamp: Dodavanje pečatova i brojeva stranica
PdfFileStamp Dodaje tekst i slike na PDF stranice, a može automatski Oznake su postavljene pomoću koordinata na temelju smještaj na svakoj stranici.
try (PdfFileStamp stamp = new PdfFileStamp("input.pdf", "stamped.pdf")) {
// Add formatted page numbers to all pages
stamp.addPageNumber("Page #", PageNumberingStyle.NumeralsArabic,
0, 0, 0, 20);
}
PdfExtractor: Izvadba teksta i slika
PdfExtractor pruža API-a zasnovanog na vuci za ekstrakciju teksta i slika iz Dokumenti u PDF-u. Nakon što povežete dokument, pozovite: extractText() za aktiviranje teksta ekstrakcija, zatim iterirati s hasNextPageText() i u članku 1. getNextPageText():
try (PdfExtractor extractor = new PdfExtractor()) {
extractor.bindPdf("document.pdf");
extractor.extractText();
while (extractor.hasNextPageText()) {
String pageText = extractor.getNextPageText();
// Collect extracted page content
}
}
Za ekstrakciju slike, extractImage() aktivira ekstrakciju i hasNextImage() / getNextImage(outputStream) Iterirati na izvedenim slikama. U skladu s člankom 1. getPassword() i u članku 1. setPassword() Metode podržavaju šifrirane dokumente.
Početak
Dodajte ovisnost o Mavenu:
<dependency>
<groupId>org.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>0.1.0-alpha</version>
</dependency>
Sve fasade klase zahtijevaju Java 11 ili noviji. Aspose. PDF FOSS za Java je: MIT-licenciran i dostupan na: https://github.com/aspose-pdf-foss/Aspose.PDF-FOSS-for-Java.