Aspose.PDF FOSS for Java on MIT-lisenssiä käyttävä Java-kirjasto PDF-dokumenttien luomiseen ja käsittelyyn. Se tarjoaa kattavan Document-luokan keskeisenä sisäänkäyntinä, sekä täyden tuen merkinnöille, interaktiivisille lomakekentille, sivujen muokkaukselle, metatiedoille ja PDF/A-yhteensopivuuden validoinnille.
Kirjasto tarjoaa 527 luokkaa, jotka kattavat koko PDF-määrityksen: asiakirjarakenne Document, Page ja PageCollection kautta; merkinnät Annotation -hierarkian kautta (mukaan lukien WidgetAnnotation, FreeTextAnnotation ja HighlightAnnotation); interaktiiviset lomakkeet Form, ButtonField, CheckboxField ja RadioButtonField avulla; sivujen renderöinti BmpDevice kautta; ja PDF/A-yhteensopivuuden tarkistus ActionRules ja ActionFixes avulla. Salaus on toteutettu AESCipher CBC-tilassa.
Lisää Aspose.PDF FOSS Maven-projektiisi käyttäen groupId:tä org.aspose ja artifactId:tä aspose-pdf. Kirjasto vaatii Java 11 tai uudemman ja on täysin MIT-lisenssi. Yritysominaisuuksista ja -tuesta katso Aspose.PDF for Java — Enterprise Product.
Document luokkaa uusien PDF-dokumenttien luomiseen. Olemassa oleviin dokumentteihin voidaan päästä Document(filePath) tai Document(stream) konstruktoreilla.PageCollection kautta. Jokainen Page paljastaa MediaBox, CropBox, kierron, resurssit ja sisällön operaattorit.DocumentInfo ja XmpMetadata.getParser(), getCatalog() ja getTrailer() kautta.getEmbeddedFiles() avulla.Document ja täyttämällä sivuja.PdfFileEditor ja Page API:a.Annotation class on kaikkien annotaatioiden perusta; konkreettisia tyyppejä ovat WidgetAnnotation, FreeTextAnnotation, HighlightAnnotation ja UnderlineAnnotation.Document.getForm() luetellaksesi tai luodaksesi ButtonField, CheckboxField ja RadioButtonField -instansseja.AppearanceCharacteristics kautta — reunaväri, tausta, kierto ja kuvatekstit.FormEditor ja FormElement korkeamman tason lomakkeen käsittelyyn.ActionRules ja ActionFixes.AESCipher käyttäen CBC-tilassa (AESCipher.encrypt(key, data) ja AESCipher.decrypt(key, data)).Artifact ja ArtifactCollection API:en kautta.PdfFileEditor.resizeContents() ja ContentsResizeParameters avulla.AnnotationRules ja ActionRules.AESCipher salataksesi dokumenttivirtoihin upotetut dataosat.Artifact -objekteja, jotka edustavat vesileimoja ja sivukoristeita.ActionFixes ja AnnotationFixes saadaksesi olemassa olevat asiakirjat täyttämään PDF/A-1b arkistointistandardit.Luo uusi asiakirja, lisää sivu ja liitä widget annotation tyylillä.
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");
}
```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");
}
Lisää valintapainikeryhmä asiakirjalomakkeeseen ja valitse arvo ohjelmallisesti.
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");
}
Avaa olemassa oleva asiakirja ja lue ensimmäisen sivun medialaatikon mitat.
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);
}