Το φάσμα των φακέλων στο Aspose.PDF FOSS για Java
Aspose.PDF FOSS for Java includes a facades layer — a set of high-level, task-focused τάξεις που παρέχουν στοχευμένες λειτουργίες σε έγγραφα PDF χωρίς να απαιτείται πλοήγηση κάθε κλάση φασάδου ακολουθεί το ίδιο πρότυπο: συνδέστε ένα Εξέτασε τις εργασίες, έσωσε το αποτέλεσμα.
Όλες οι τάξεις της ΕΣΔ βρίσκονται στο org.aspose.pdf.facades Πάρκο :
import org.aspose.pdf.facades.*;
PdfAnnotationEditor: Σπλά και Διαγράψτε τις αναφορές
PdfAnnotationEditor παρέχει δραστηριότητες για τη διαχείριση των αναγραφών σε μαζικό επίπεδο: να τα σπρώχνουν στο περιεχόμενο της σελίδας, να αφαιρούν όλες τις σημειώσεις ή να καταργούν Ειδικοί τύποι αναφοράς ανά όνομα.
try (PdfAnnotationEditor editor = new PdfAnnotationEditor()) {
editor.bindPdf("annotated.pdf");
// Flatten all annotations into the page content stream
editor.flattenAnnotations();
editor.save("flat.pdf");
}
Η deleteAnnotations(annotationType) Η υπερφόρτωση αποδέχεται ένα σήμα τύπου αναφοράς Όπως και "Highlight" ή "Widget" Να αφαιρέσουν μόνο αναφορές αυτού του τύπου. countAnnotations() επιστρέφει τον συνολικό αριθμό αναρτήσεων σε όλες τις σελίδες.
PdfBookmarkEditor: Δημιουργία και διαγραφή σημειώσεων βιβλίου
PdfBookmarkEditor διαχειρίζεται το PDF outline tree (bookmarks). εκθέτει μεθόδους Για να δημιουργήσουμε νέα βιβλία με createBookmarks(),Διαγράφοντας όλα τα βιβλία με deleteBookmarks(), και αφαιρέστε τα βιβλία με τίτλο με deleteBookmarkByTitle().
try (PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor()) {
bookmarkEditor.bindPdf("input.pdf");
// Remove all bookmarks from the document
bookmarkEditor.deleteBookmarks();
bookmarkEditor.save("no-bookmarks.pdf");
}
Η bindPdf(document) Η υπερβολική επιβάρυνση αποδέχεται το Document άμεση, επιτρέποντας την χρησιμοποιείται σε σωλήνες όπου το έγγραφο έχει ήδη φορτωθεί στη μνήμη.
PdfContentEditor: Αντικατάσταση κειμένου
PdfContentEditor υποστηρίζει την στοχευμένη αντικατάσταση κειμένου μέσα σε ροές περιεχομένου PDF. replaceText(searchText, replaceText) αντικαθιστά όλες τις εκδηλώσεις μιας γραμμής σε όλο το έγγραφο,; replaceText(searchText, pageNumber, replaceText) Περιορίζει την αντικατάσταση σε μία σελίδα.
try (PdfContentEditor contentEditor = new PdfContentEditor()) {
contentEditor.bindPdf("template.pdf");
contentEditor.replaceText("{{CompanyName}}", "Acme Corp");
contentEditor.save("output.pdf");
}
TextReplaceOptions Ελέγξτε αν η αντικατάσταση θα πρέπει να διατηρήσει το πρωτότυπο. γραμματοσειρά και μέγεθος ή κληρονομικές ιδιότητες κειμένου από το περιβάλλον περιεχομένου. getStamps(pageNumber) Επιστροφή StampInfo - αντικείμενα για όλα τα σφραγίσματα σε μια σελίδα, και deleteStampById() Αφαιρεί ένα συγκεκριμένο σήμα με τον αναγνωριστή του.
PdfFileSecurity: Κρυπτογράφηση και Αδειοδότηση
PdfFileSecurity διαχειρίζεται την ασφάλεια σε επίπεδο εγγράφου, συμπεριλαμβανομένης της κρυπτογράφισης, αποκρυπήσεως, Οι παραλλαγές κατασκευαστή αποδέχονται τα μονοπάτια αρχείων, τις ροές ή Μια υπάρχουσα Document Προς το παρόν, δίπλα στον προορισμό.
DocumentPrivilege αντιπροσωπεύει τις άδειες πρόσβασης για το κρυπτογραφημένο έγγραφο. Χρησιμοποιήστε DocumentPrivilege.getForbidAll() να αρνηθεί όλες τις λειτουργίες του χρήστη, ή DocumentPrivilege.getAllowAll() να παρέχει πλήρη πρόσβαση.
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) Αφαιρεί την κρυπτογράφηση όταν ο κωδικός πρόσβασης του ιδιοκτήτη είναι γνωστός. Η Algorithm Ο ΕΝΟΠ παρέχει RC4 και AES οικογένειες αλγορίθμων.; KeySize Προσδιορίζει το μήκος του κλειδιού.
PdfFileStamp: Προσθήκη σφραγίδων και αριθμών σελίδας
PdfFileStamp Προσθέτει κείμενο και εικόνες σε σελίδες PDF και μπορεί αυτόματα να δημιουργεί μορφοποιημένους αριθμούς σελίδων. οι εκτυπώσεις τοποθετούνται χρησιμοποιώντας συντονισμένα τοποθεσία σε κάθε σελίδα.
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: Εξαγωγή κειμένου και εικόνας
PdfExtractor παρέχει ένα API με βάση το pull για την εξόρυξη κειμένου και εικόνων από PDF έγγραφα. μετά την ανάληψη ενός εγγράφου, καλέστε extractText() Να εκτοξεύσεις κείμενο Η εκχύλιση, στη συνέχεια ιταρίστε με hasNextPageText() και getNextPageText():
try (PdfExtractor extractor = new PdfExtractor()) {
extractor.bindPdf("document.pdf");
extractor.extractText();
while (extractor.hasNextPageText()) {
String pageText = extractor.getNextPageText();
// Collect extracted page content
}
}
Για την εξόρυξη εικόνας, extractImage() Εξέτασε την εκχύλιση και hasNextImage() / getNextImage(outputStream) Ιταλία πάνω από τις εικόνες που έχουν αφαιρεθεί. Η getPassword() και setPassword() Οι μέθοδοι υποστήριξης κρυπτογραφημένων εγγράφων.
Ξεκινώντας
Προσθέστε την εξάρτηση από το Maven:
<dependency>
<groupId>org.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>0.1.0-alpha</version>
</dependency>
Όλα τα μαθήματα facade απαιτούν Java 11 ή αργότερα. Aspose.PDF FOSS για Java είναι Εγκρίθηκε και διαθέσιμο σε https://github.com/aspose-pdf-foss/Aspose.PDF-FOSS-for-Java.