Aspose.PDF FOSS untuk Java adalah perpustakaan Java berlisensi MIT untuk membuat dan bekerja dengan dokumen PDF. Ini menyediakan kelas Document yang komprehensif sebagai titik masuk utama, bersama dengan cakupan penuh anotasi, bidang formulir interaktif, manipulasi halaman, metadata, dan validasi kepatuhan PDF/A.
Perpustakaan ini mengekspos 527 kelas yang mencakup seluruh spesifikasi PDF: struktur dokumen melalui Document, Page, dan PageCollection; anotasi melalui hierarki Annotation (termasuk WidgetAnnotation, FreeTextAnnotation, dan HighlightAnnotation); formulir interaktif dengan Form, ButtonField, CheckboxField, dan RadioButtonField; rendering halaman melalui BmpDevice; dan pemeriksaan kepatuhan PDF/A melalui ActionRules dan ActionFixes. Enkripsi disediakan melalui AESCipher dalam mode CBC.
Tambahkan Aspose.PDF FOSS ke proyek Maven Anda menggunakan groupId org.aspose dan artifactId aspose-pdf. Perpustakaan ini memerlukan Java 11 atau lebih baru dan sepenuhnya berlisensi MIT. Untuk fitur dan dukungan enterprise, lihat Aspose.PDF for Java — Enterprise Product.
Document untuk membuat dokumen PDF baru. Dokumen yang ada dapat diakses melalui konstruktor Document(filePath) atau Document(stream).PageCollection. Setiap Page mengekspos MediaBox, CropBox, rotasi, sumber daya, serta operator konten.DocumentInfo dan XmpMetadata.getParser(), getCatalog() dan getTrailer().getEmbeddedFiles().Document dan mengisi halaman.PdfFileEditor dan API Page.Annotation adalah dasar untuk semua anotasi; jenis konkret termasuk WidgetAnnotation, FreeTextAnnotation,HighlightAnnotation dan UnderlineAnnotation.Document.getForm() untuk mendaftar atau membuat instansi ButtonField, CheckboxField dan RadioButtonField.AppearanceCharacteristics warna perbatasan, latar belakang, rotasi, dan keterangan.FormEditor dan FormElement untuk manipulasi formulier tingkat lebih tinggi.ActionRules dan ActionFixes.AESCipher menggunakan mode CBC (AESCipher.encrypt(key, data) dan AESCipher.decrypt(key, data)).Artifact dan ArtifactCollection.PdfFileEditor.resizeContents() dan ContentsResizeParameters.AnnotationRules dan ActionRules.AESCipher untuk mengenkripsikan bagian data yang dimasukkan dalam aliran dokumen.Artifact objek yang mewakili watermark dan dekorasi halaman.ActionFixes dan AnnotationFixes untuk membuat dokumen yang ada memenuhi standar arsitektur PDF/A-1b.Buat dokumen baru, tambahkan halaman, dan lampikan catatan widget dengan gaya.
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");
}
Tambahkan kelompok tombol radio ke formulir dokumen dan pilih nilai secara programatis.
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");
}
Akses dokumen yang ada dan baca dimensi kotak media halaman pertama.
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);
}