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

Aspose.PDF FOSS pre Java

Vytvárajte a manipulujte s PDF dokumentmi z Java — s anotáciami, formulárovými poľami, manipuláciou stránok a súladom s PDF/A. Licencovaná pod MIT.

Bezplatná MIT-licencovaná Java knižnica na tvorbu a manipuláciu PDF

Aspose.PDF FOSS pre Java je knižnica Java licencovaná pod MIT, určená na vytváranie a prácu s PDF dokumentmi. Poskytuje komplexnú triedu Document ako centrálny vstupný bod, spolu s úplnou podporou anotácií, interaktívnych formulárových polí, manipulácie so stránkami, metadát a validácie zhody s PDF/A.

Knižnica poskytuje 527 tried pokrývajúcich celú špecifikáciu PDF: štruktúru dokumentu prostredníctvom Document, Page a PageCollection; anotácie prostredníctvom hierarchie Annotation (vrátane WidgetAnnotation, FreeTextAnnotation a HighlightAnnotation); interaktívne formuláre s Form, ButtonField, CheckboxField a RadioButtonField; renderovanie stránok prostredníctvom BmpDevice; a kontrolu súladu s PDF/A prostredníctvom ActionRules a ActionFixes. Šifrovanie je poskytované prostredníctvom AESCipher v režime CBC.

Pridajte Aspose.PDF FOSS do svojho Maven projektu pomocou groupId org.aspose a artifactId aspose-pdf. Knižnica vyžaduje Java 11 alebo novší a je plne licencovaná pod MIT. Pre podnikové funkcie a podporu pozrite Aspose.PDF for Java — Enterprise Product.

Štruktúra dokumentu a správa stránok

  • Document API: Použite triedu Document na vytvorenie nových PDF dokumentov. Existujúce dokumenty je možné získať pomocou konštruktorov Document(filePath) alebo Document(stream).
  • Správa stránok: Pridávať, pristupovať a upravovať stránky cez PageCollection. Každý Page odhaľuje MediaBox, CropBox, rotáciu, zdroje a operátory obsahu.
  • Metadáta: Čítajte a zapisujte metadáta dokumentu prostredníctvom DocumentInfo a XmpMetadata.
  • PDF štruktúra: Prístup k podkladovým PDF objektom cez getParser(), getCatalog() a getTrailer().
  • Embedded files: Spravujte kolekcie vložených súborov pomocou getEmbeddedFiles().

Bežné scenáre spracovania dokumentov

  • PDF generovanie: Vytvárajte dokumenty programovo vytvorením Document a naplnením strán.
  • Analýza dokumentu: Prístup k existujúcim súborom na kontrolu metadát alebo výpočet polí formulára.
  • Manipulácia so stránkami: Zmeňte veľkosť, otočte alebo preusporiadajte stránky pomocou PdfFileEditor a Page API.
  • Dávkové pracovné postupy: Používajte konzistentné transformácie naprieč viacerými dokumentmi v serverových pipeline-och.

Anotácie a formulárové polia

  • Hierarchia anotácií: Abstraktná trieda Annotation je základom pre všetky anotácie; konkrétne typy zahŕňajú WidgetAnnotation, FreeTextAnnotation, HighlightAnnotation a UnderlineAnnotation.
  • Interaktívne formuláre: Prístup k formuláru dokumentu cez Document.getForm() na vymenovanie alebo vytvorenie ButtonField, CheckboxField a RadioButtonField inštancií.
  • Vzhľad widgetu: Ovládajte vizuálne vlastnosti prostredníctvom AppearanceCharacteristics — farba okraja, pozadie, rotácia a popisky.
  • Form editing: Použite FormEditor a FormElement pre manipuláciu s formulárom na vyššej úrovni.

Kontrola dokumentov a spolupráca

  • Markup annotations: Pridajte zvýraznenie, podčiarknutie alebo voľné textové anotácie do dokumentov pre revízne pracovné postupy.
  • Interaktívne formuláre: Vytvorte vyplniteľné dokumenty s rádiovými tlačidlami, zaškrtávacími políčkami a tlačidlami pre zachytávanie údajov.
  • Extrahovanie údajov formulára: Prečítajte odoslané hodnoty polí formulára pre server‑side pipeliney.
  • Archívna zhoda: Overte a opravte dokumenty pre dlhodobé archivovanie pomocou ActionRules a ActionFixes.

Bezpečnosť a operácie s obsahom

  • AES šifrovanie: Šifrujte a dešifrujte bajtové polia údajov pomocou AESCipher v režime CBC (AESCipher.encrypt(key, data) a AESCipher.decrypt(key, data)).
  • Správa artefaktov: Identifikovať a manipulovať s hlavičkami, pätičkami, vodoznakmi a obrázkami na pozadí prostredníctvom API Artifact a ArtifactCollection.
  • Zmena veľkosti obsahu: Upravte rozloženie obsahu stránky pomocou PdfFileEditor.resizeContents() a ContentsResizeParameters.
  • Validácia zhody: Overte anotácie a akčné pravidlá voči štandardom PDF/A pomocou AnnotationRules a ActionRules.

Prípady použitia zabezpečenia dokumentov

  • Šifrované payloads: Použite AESCipher na šifrovanie dátových sekcií vložených do prúdov dokumentu.
  • Ochrana dokumentu: Použite bezpečnostné nastavenia pre kontrolu prístupu v procesoch súladu.
  • Vodoznaky: Detekovať a spravovať Artifact objekty predstavujúce vodoznaky a dekorácie stránok.
  • Archívna zhoda: Spustite ActionFixes a AnnotationFixes, aby existujúce dokumenty spĺňali archívne štandardy PDF/A-1b.

Vytvoriť dokument s anotáciou widgetu

Vytvorte nový dokument, pridajte stránku a pripojte widget anotáciu so štýlom.

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

Vytvoriť formulár s rádiovými tlačidlami

Pridajte skupinu rádiových tlačidiel do formulára dokumentu a programovo vyberte hodnotu.

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

Skontrolovať rozmery stránok dokumentu

Získajte prístup k existujúcemu dokumentu a prečítajte rozmery media boxu prvej stránky.

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

 Slovenčina