Aspose.PDF FOSS for Java, PDF belgeleri oluşturmak ve çalışmak için MIT lisanslı bir Java kütüphanesidir. Merkezi giriş noktası olarak kapsamlı bir Document sınıfı sağlar ve ek olarak ek açıklamaların, etkileşimli form alanlarının, sayfa manipülasyonunun, meta verilerin ve PDF/A uyumluluk doğrulamasının tam kapsamını sunar.
Kütüphane, tam PDF spesifikasyonunu kapsayan 527 sınıfı sunar: belge yapısı Document, Page ve PageCollection aracılığıyla; ek açıklamalar Annotation hiyerarşisi üzerinden ( WidgetAnnotation, FreeTextAnnotation ve HighlightAnnotation dahil); etkileşimli formlar Form, ButtonField, CheckboxField ve RadioButtonField ile; sayfa render’ı BmpDevice aracılığıyla; ve PDF/A uyumluluk kontrolü ActionRules ve ActionFixes üzerinden. Şifreleme, CBC modunda AESCipher aracılığıyla sağlanır.
Aspose.PDF FOSS’yi Maven projenize groupId org.aspose ve artifactId aspose-pdf kullanarak ekleyin. Kütüphane, Java 11 veya daha yenisini gerektirir ve tamamen MIT lisanslıdır. Kurumsal özellikler ve destek için Aspose.PDF for Java — Enterprise Product adresine bakın.
Document sınıfını kullanın. Mevcut belgelere Document(filePath) veya Document(stream) yapıcıları aracılığıyla erişilebilir.PageCollection aracılığıyla ekleyin, erişin ve değiştirin. Her Page, MediaBox, CropBox, döndürme, kaynaklar ve içerik operatörlerini ortaya çıkarır.DocumentInfo ve XmpMetadata aracılığıyla okuyun ve yazın.getParser(), getCatalog() ve getTrailer() aracılığıyla erişin.getEmbeddedFiles() ile yönetin.Document ve sayfa doldurarak belgeleri programsal olarak oluşturun.PdfFileEditor ve Page API’sini kullanarak sayfaların boyutunu değiştirin, döndürün veya yeniden düzenleyin.Annotation sınıfı tüm yorumaların temelidir; somut türler arasında WidgetAnnotation, FreeTextAnnotation,HighlightAnnotation ve UnderlineAnnotation bulunmaktadır.Document.getForm() ile belge formu erişerek, ButtonField,CheckboxField ve RadioButtonField örneklerini saymak veya oluşturmak için.AppearanceCharacteristics Kenarlık rengi, arka plan, dönme ve başlıklar ile görsel özellikleri kontrol edin.FormEditor ve FormElement kullanın.ActionRules ve ActionFixes kullanarak belgelerin uzun süreli arşif için doğrulanması ve düzeltilmesi.AESCipher ile veri bayt dizilerini şifreler ve çözür (AESCipher.encrypt(key, data) ve AESCipher.decrypt(key, data)).Artifact ve ArtifactCollection API’leri aracılığıyla tanımlayın ve manipüle edin.PdfFileEditor.resizeContents() ve ContentsResizeParameters ile ayarlayın.AnnotationRules ve ActionRules kullanarak PDF/A standartlarına göre yorumlama ve eylem kurallarını doğrulayın.AESCipher kullanın.Artifact nesneleri tespit edin ve yönetin.ActionFixes ve AnnotationFixes çalıştırın.Yeni bir belge oluşturun, sayfa ekleyin ve stil ile widget açıklama ekleyiniz.
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");
}
Bir belge formuna bir radyo düğmesi grubu ekle ve programsal olarak değer seç.
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");
}
Mevcut bir belgeye eriş ve ilk sayfanın medya kutusunun boyutlarını oku.
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);
}