Aspose.PDF FOSS pour Java est une bibliothèque Java sous licence MIT pour créer et travailler avec des documents PDF. Elle fournit une classe Document complète comme point d’entrée central, ainsi qu’une couverture complète des annotations, des champs de formulaire interactifs, de la manipulation de pages, des métadonnées et de la validation de conformité PDF/A.
La bibliothèque expose 527 classes couvrant l’intégralité de la spécification PDF : structure du document via Document, Page et PageCollection ; annotations via la hiérarchie Annotation (incluant WidgetAnnotation, FreeTextAnnotation et HighlightAnnotation) ; formulaires interactifs avec Form, ButtonField, CheckboxField et RadioButtonField ; rendu de page via BmpDevice ; et vérification de conformité PDF/A via ActionRules et ActionFixes. Le chiffrement est fourni via AESCipher en mode CBC.
Ajoutez Aspose.PDF FOSS à votre projet Maven en utilisant le groupId org.aspose et l’artifactId aspose-pdf. La bibliothèque nécessite Java 11 ou ultérieur et est entièrement sous licence MIT. Pour les fonctionnalités et le support d’entreprise, voir Aspose.PDF for Java — Enterprise Product.
Document pour créer un nouveau document PDF. Les documents existants peuvent être consultés via les constructeurs Document(filePath) ou Document(stream).PageCollection. Chaque Page expose MediaBox, CropBox , la rotation, les ressources et les opérateurs de contenu.DocumentInfo et XmpMetadata.getParser(), getCatalog() et getTrailer().getEmbeddedFiles().Document et en remplissant les pages.PdfFileEditor et l’API Page.Annotation est la base de toutes les annothèques; les types concrets incluent WidgetAnnotation, FreeTextAnnotation,HighlightAnnotation et UnderlineAnnotation.Document.getForm() pour énumérer ou créer les instances ButtonField, CheckboxField et RadioButtonField.AppearanceCharacteristics couleur de bordure, fond, rotation et légendes.FormEditor et FormElement pour la manipulation de formulaires à un niveau plus élevé.ActionRules et ActionFixes.AESCipher en utilisant le mode CBC (AESCipher.encrypt(key, data) et AESCipher.decrypt(key, data)).Artifact et ArtifactCollection.PdfFileEditor.resizeContents() et ContentsResizeParameters.AnnotationRules et ActionRules.AESCipher pour chiffrer les sections de données intégrées dans des flux de documents.Artifact représentant des filigranes et décorations de page.ActionFixes et AnnotationFixes pour que les documents existants répondent aux normes d’archivage PDF/A-1b.Créez un nouveau document, ajoutez une page et joignez une annotation de widget avec style.
try (Document doc = new Document()) ```java
try (Document doc = new Document()) {
Page page = doc.getPages().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("output.pdf");
}
Ajouter un groupe de boutons radio à un formulaire document et sélectionner une valeur programmatiquement.
try (Document doc = new Document()) {
Page page = doc.getPages().add();
RadioButtonField radio = new RadioButtonField(page);
radio.setPartialName("choice");
radio.addOption("Option1", new Rectangle(50, 50, 70, 70));
radio.addOption("Option2", new Rectangle(50, 80, 70, 100));
doc.getForm().add(radio, 1);
radio.setValue("Option2");
doc.save("form.pdf");
}
Accédez à un document existant et lisez les dimensions de la boîte multimédia de sa première page.
try (Document doc = new Document("input.pdf")) {
double width = doc.getPages().get(1).getMediaBox().getWidth();
double height = doc.getPages().get(1).getMediaBox().getHeight();
System.out.println("Page size: " + width + " x " + height);
}