1. Products
  2.   Aspose.PDF
  3.   Aspose.PDF FOSS for Java

Aspose.PDF FOSS for Java

Kreirajte i manipulišite PDF dokumentima iz Java — sa anotacijama, poljima obrasca, manipulacijom stranica i usklađenošću sa PDF/A. MIT‑licencirano.

Бесплатна МИТ-лиценцирана Јава библиотека за стварање и манипулацију ПДФ-а

Aspose.PDF FOSS za Java je MIT-licencirana Java biblioteka za kreiranje i rad sa PDF dokumentima. Ona pruža sveobuhvatnu Document klasu kao centralnu tačku ulaza, zajedno sa potpunim pokrivanjem anotacija, interaktivnih polja formulara, manipulacije stranicama, metapodataka i validacije usklađenosti sa PDF/A.

Biblioteka izlaže 527 klasa koje pokrivaju kompletnu PDF specifikaciju: strukturu dokumenta putem Document, Page i PageCollection; anotacije kroz hijerarhiju Annotation (uključujući WidgetAnnotation, FreeTextAnnotation i HighlightAnnotation); interaktivne forme sa Form, ButtonField, CheckboxField i RadioButtonField; renderovanje stranica putem BmpDevice; i proveru usklađenosti sa PDF/A kroz ActionRules i ActionFixes. Šifrovanje se obezbeđuje putem AESCipher u CBC režimu.

Dodajte Aspose.PDF FOSS u vaš Maven projekat koristeći groupId org.aspose i artifactId aspose-pdf. Biblioteka zahteva Java 11 ili noviji i potpuno je MIT-licencirana. Za enterprise funkcionalnosti i podršku, pogledajte Aspose.PDF for Java — Enterprise Product.

Структура документа и управљање страницама

  • ** API документа:** Користите класу Document за стварање нових PDF докумената. До постојећих докумена се може приступити преко конструктора Document(filePath) или Document(stream) .
  • ** Управљање страницама:** Додавање, приступ и модификација страна преко PageCollection. Свако Page излага MediaBox, CropBox, ротацију, ресурсе и операторе садржаја.
  • Метаподаци: Прочитање и писање метаподатака документа преко DocumentInfo и XmpMetadata.
  • Структура ПДФ-а: Приступајте основним PDF објектима преко getParser(), getCatalog() и getTrailer().
  • ** Уграђене датотеке:** Управљајте уграђеним колекцијама датова са getEmbeddedFiles().

Сценарија за обраду заједничких докумената

  • PDF генерација: Креирајте документе програмски тако што ћете направити Document и попуњавати странице.
  • Анализа документа: Приступите постојећим датотекама за преглед метаподатака или набрајање поља образаца.
  • Манипулација страницама: Промените величину, ротирајте или преуредите странице користећи PdfFileEditor и Page API.
  • Пакетни радни токови: Примените конзистентне трансформације на више докумената у серверским процесима.

Аннотације и поља обрасца

  • Hijerarhija anotacija: Apstraktna klasa Annotation je osnova za sve anotacije; konkretni tipovi uključuju WidgetAnnotation, FreeTextAnnotation, HighlightAnnotation i UnderlineAnnotation.
  • Interaktivni obrasci: Pristupite obrascu dokumenta putem Document.getForm() da izlistate ili kreirate instance ButtonField, CheckboxField i RadioButtonField.
  • Izgled vidžeta: Kontrolišite vizuelna svojstva putem AppearanceCharacteristics — boja ivice, pozadina, rotacija i naslovi.
  • Uređivanje obrasca: Koristite FormEditor i FormElement za manipulaciju obrascima višeg nivoa.

Преглед документа и сарадња

  • Анотације за ознаку: Додајте наглашавање, потчеркање или анотација слободног текста у документе за преглед радних токова.
  • Интерактивни форми: Створити документи који се могу попунити са радио дугменима, оквирима за проверку и гужвацима за снимање података.
  • Извајање података из обрасца: Прочитање вредности поља у поднесеном обрасуцу за цеви на страни сервера.
  • ** Архивирање:** Валидирајте и поправите документе за дугорочно архивисање користећи ActionRules и ActionFixes.

Операције безбедности и садржаја

  • ** АЕС шифровање:** Шифрирајте и дешифрирате марије бајтова података са AESCipher користећи ЦБЦ режим (AESCipher.encrypt(key, data) и AESCipher.decrypt(key, data)).
  • Управа артефакта: Идентификовати и манипулисати заглављевима, потписама, воденим знацима и сликама позадини преко АПИ-а Artifact и ArtifactCollection.
  • ** Промени величине садржаја:** Поправи распоред садржаja странице са PdfFileEditor.resizeContents() и ContentsResizeParameters.
  • Валидација у складу са стандардима: Валидирајте правила анотације и акције према PDF/A стандардама користећи AnnotationRules и ActionRules.

Користити случајеве за сигурност докумената

  • Криптовани корисни оптерећења: Користите AESCipher за шифровање делова података уграђених у струје докумената.
  • Заштита докумената: Примене безбедносних поставки за контролу приступа у радним процесима који су у складу са одредбама.
  • ** Вотермаркинг:** Откривање и управљање Artifact објектима који представљају вотермарке и украсе страница.
  • Архивска усаглашеност: Извршите ActionFixes и AnnotationFixes како би постојећи документи испунили PDF/A-1b стандарде за архивирање.

Створити документ са анотацијом виџетова

Створити нови документ, додати страницу и прикључити анотацију виџетог са стилом.

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");
}

Створити формулар са радио дугменима

Додајте групу радио дугмева у формулар документа и програматично изаберите вредност.

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");
}

Проверите димензије страница документа

Приступајте постојећем документу и прочитајте димензије медијске кутије прве странице.

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);
}
  

Support and Learning Resources

 Српски