Εισαγωγή

Aspose.PDF FOSS for Java is an MIT-licensed Java library for creating and manipulating PDF έγγραφα. είναι διαθέσιμο στο GitHub υπό την άδεια MIT και δεν απαιτεί API κλειδί Η βιβλιοθήκη παρουσιάζει 527 μαθήματα που καλύπτουν το πλήρες PDF. προδιαγραφές από τη δομή του εγγράφου σε αναφορές, διαδραστικές μορφές, παραδόσεις σελίδων, και κρυπτογραφικές λειτουργίες.

Η βιβλιοθήκη χτίζεται γύρω από το Document Η τάξη, η οποία είναι το κεντρικό σημείο εισόδου για την όλες τις λειτουργίες PDF. δημιουργία ενός νέου εγγράφου, πρόσβαση σε σελίδες μέσω PageCollection, Διαβάστε τα μεταδεδομένα μέσω DocumentInfo,ή να πλοηγηθείτε στο κατάλογο μέσω getCatalog() και getTrailer() Όλα ξεκινούν από το A Document Η περίπτωση.

Γρήγορη έναρξη

Προσθέστε την εξάρτηση του Maven στο δικό σας pom.xml:

<dependency>
  <groupId>org.aspose</groupId>
  <artifactId>aspose-pdf</artifactId>
  <version>0.1.0-alpha</version>
</dependency>

Η βιβλιοθήκη οργανώνει όλες τις δημόσιες τάξεις API κάτω από τρία πακέτα. Προσθέστε αυτές τις δηλώσεις πακιδίων σε οποιοδήποτε αρχείο προέλευσης Java που χρησιμοποιεί το API:

// Core API — Document, Page, Annotation, Form, etc.
org.aspose.pdf.*
// Annotation subclasses
org.aspose.pdf.annotations.*
// Facade classes — PdfFileEditor, PdfAnnotationEditor, etc.
org.aspose.pdf.facades.*

Aspose.PDF FOSS for Java requires Java 11 or later. The source code and issue tracker Διατίθενται στο https://github.com/aspose-pdf-foss/Aspose.PDF-FOSS-for-Java.

Ξεκινώντας

Δημιουργήστε και αποθηκεύστε ένα ελάχιστο έγγραφο για να επαληθευτεί η ρύθμιση:

try (Document doc = new Document()) {
    PageCollection pages = doc.getPages();
    Page page = pages.add();
    doc.save("output.pdf");
    System.out.println("Pages: " + pages.getCount());
}

Η Document Ο κατασκευαστής τάξεων αποδέχεται μια διαδρομή αρχείου ή ροή για την πρόσβαση σε υπάρχοντα αρχεία, ή μπορεί να καλείται χωρίς επιχειρήματα για τη δημιουργία ενός άδειου εγγράφου. σελίδες διαχειρίζονται Μέσα από PageCollection,Διαθέσιμο μέσω Document.getPages().Κάθε ένας Page Εμφανίζει την Γεωμετρία μέσω getMediaBox(), getCropBox(),και getRotate(),και παρέχει πρόσβαση σε πόροι, διαχειριστές περιεχομένου και αναφορές.

try (Document doc = new Document()) {
    PageCollection pages = doc.getPages();
    Page page = pages.add();
    // page.getMediaBox() -> Rectangle with width/height
    // page.getAnnotations() -> AnnotationCollection
    doc.save("output.pdf");
}

Η PdfFileEditor Η τάξη παρέχει concatenate() για τη συγχώνευση πολλών εγγράφων και resizeContents() Με ContentsResizeParameters Για να προσαρμόσετε το περιεχόμενο διάταξης μέσα στο Υπάρχουν τα όρια της σελίδας.

Ανακοινώσεις

Aspose.PDF FOSS for Java implements the full PDF annotation hierarchy rooted at the Αμπρατισμός Annotation Ετικέτες: Ειδικές κατηγορίες αναρτήσεων περιλαμβάνουν WidgetAnnotation Για μορφή ελέγχου, FreeTextAnnotation για τα κείμενα του κειμένου, HighlightAnnotation και UnderlineAnnotation για την μάρκα, και CircleAnnotation και CaretAnnotation Για ΓΡΑΦΙΚΕΣ ΣΗΜΕΙΩΣΕΙΣ.

Κάθε αναφορά συνδέεται με ένα Page και α Rectangle Ορισμός της τοποθεσίας. Οι οπτικές ιδιότητες ελέγχονται μέσω της AppearanceCharacteristics,που εκθέτει setBorder(), setBackground(), setRotate(),και setCaption() Ετικέτες - Αναφορές προστίθεται σε μια σελίδα μέσω page.getAnnotations().add(annotation).

try (Document doc = new Document()) {
    PageCollection pages = doc.getPages();
    Page page = pages.add();
    WidgetAnnotation w = new WidgetAnnotation(page, new Rectangle(0, 0, 100, 50));
    w.getCharacteristics().setBorder(Color.fromRgb(1, 0, 0));
    w.getCharacteristics().setCaption("Submit");
    page.getAnnotations().add(w);
    doc.save("annotated.pdf");
}

Διαδραστικά σχήματα πεδία

Η Form Η τάξη, προσβάσιμη μέσω Document.getForm(), διαχειρίζεται όλα τα πεδία AcroForm. το Η βιβλιοθήκη παρέχει ButtonField, CheckboxField, RadioButtonField, TextBoxField, ComboBoxField,και ListBoxField για την κατασκευή γεμάτων μορφών. FormEditor Είναι η Φάση για να εργαστείτε με τα πεδία φόρμας σε ένα συνδεδεμένο έγγραφο.

Οι ομάδες ραδιοφωνικών κουμπιών δημιουργούνται με RadioButtonField, η οποία δέχεται μια σελίδα και υποστηρίζει addOption() να προσθέσετε επιλεγμένες επιλογές, κάθε μία συνδεόμενη με ένα Rectangle Για το οπτικό της Τοποθεσία - Η setValue() Η μέθοδος επιλέγει προγραμματικά μια επιλογή.

try (Document doc = new Document()) {
    PageCollection pages = doc.getPages();
    Page page = pages.add();
    RadioButtonField radio = new RadioButtonField(page);
    radio.setPartialName("answer");
    radio.addOption("Yes", new Rectangle(50, 50, 70, 70));
    radio.addOption("No", new Rectangle(50, 80, 70, 100));
    doc.getForm().add(radio, 1);
    radio.setValue("Yes");
    doc.save("form.pdf");
}

Ασφάλεια: AES κρυπτογράφηση

Η AESCipher Η κλάση εφαρμόζει την κωδικοποίηση AES σε λειτουργία CBC για κρυπτογράφηση και αποκρυφισμό Τα δεδομένα byte ρίζες ενσωματωμένες σε έγγραφα PDF. AESCipher.encrypt(key, data) Επιστρέφει το κρυπτογραφημένο κείμενο, και AESCipher.decrypt(key, data) Ανακάλυψε το πρωτότυπο κείμενο. Για την εκφραστική IV έλεγχο, encryptWithIV(key, iv, plaintext) και decryptWithIV(key, iv, cipherText) Να παρέχει καθοριστική λειτουργία.

PDF/A Εγκρίωση συμμόρφωσης

Η βιβλιοθήκη περιλαμβάνει ActionRules και ActionFixes για την επικύρωση συμμόρφωσης PDF/A και Της διόρθωσης. ActionRules.validate() ελέγχουν για απαγορευμένες ενέργειες σε κατάλογο, σελίδα και Εισαγωγές του widget. ActionFixes παρέχει μεθόδους όπως removeCatalogAA(), removePageAA(),και removeWidgetAA() Να διορθώσουμε μη συμμόρφωση με τα λεξικά δράσης. Ομοίως και, AnnotationRules και AnnotationFixes Συμμόρφωση με την αναφορά.

Σχετικά στοιχεία: Κεφαλές, Ποδάλια και Υδροηλεκτρικά σημεία

Η Artifact μοντέλα τάξης σελίδες διακοσμητικές όπως κεφαλές, πόδια, υδρόβια σημεία και Φωτογραφίες από το φόντο. ArtifactCollection, προσβάσιμη μέσω των πόρων σελίδας, επιτρέπει την κατάταξη και την απομάκρυνση των αντικειμένων. ιταλικές page.getArtifacts() και καλείται ArtifactCollection.delete(artifact) Απομακρύνει συγκεκριμένα αντικείμενα χωρίς τροποποίηση Το περιεχόμενο του εγγράφου ρέει άμεσα.

Page Ρεντερίνγκ

Η BmpDevice Η τάξη μεταφέρει σελίδες PDF απευθείας στα αρχεία εικόνας BMP χρησιμοποιώντας process(page, outputPath).Αυτό είναι χρήσιμο για τη γενιά μικρών, προβολή εγγράφων, ή σωλήνες επεξεργασίας βάσει εικόνας.

Σχετικοί Πόροι