Open Source Java API pentru documente Word DOCX
Creați, citiți, editați și convertiți fișiere Microsoft Word DOCX, adăugați text și tabele prin biblioteca Java.
DOCX4J este o bibliotecă open source bazată pe JAXB (Apache v2) pentru manipularea formatelor de fișiere Microsoft Office. Oferă funcționalitatea de a citi, scrie, edita și salva formatul de fișier Microsoft Word 2007 DOCX.
DOCX4J este similar cu SDK-ul OpenXML al Microsoft, dar pentru Java. Utilizează JAXB pentru a crea reprezentarea obiectului în memorie. Folosind API-ul, puteți genera documente Mircosoft Office, le editați, formatați textul și paragrafele, inserați tabele și imagini și gestionați alte elemente de formular și multe altele. Practic, accentul ei este pus pe putere, dacă formatul o acceptă o poți face folosind API-ul.
Noțiuni introductive cu DOCX4J
În primul rând, trebuie să aveți Java Development Kit (JDK) instalat pe sistemul dvs. Referința la DOCX4J în proiectul Java bazat pe Maven este și mai simplă. Tot ce aveți nevoie este să adăugați următoarea dependență în pom.xml și să lăsați IDE-ul să preia și să facă referire la fișierele DOCX4J Jar.
Dependența DOCX4J Maven
<dependency>
<groupId>org.docx4j</groupId>
<artifactId>docx4j-JAXB-Internal</artifactId>
<version>8.0.0</version>
</dependency>
<dependency>
<groupId>org.docx4j</groupId>
<artifactId>docx4j-JAXB-ReferenceImpl</artifactId>
<version>8.0.0</version>
</dependency>
<dependency>
<groupId>org.docx4j</groupId>
<artifactId>docx4j-JAXB-MOXy</artifactId>
<version>8.0.0</version>
</dependency>
Adăugați paragraf, imagine și tabel în documentele Word
DOCX4J permite dezvoltatorilor să adauge paragrafe și imagini în documentele Word. API-ul oferă, de asemenea, funcția de a adăuga tabele la documentele DOCX, făcând posibilă crearea de tabele simple și imbricate cu date definite de utilizator.
Creați DOCX gratuit folosind DOCX4J - Java
// Create word package
WordprocessingMLPackage wordPackage = WordprocessingMLPackage.createPackage();
// Create main document part
MainDocumentPart mainDocumentPart = wordPackage.getMainDocumentPart();
// Add Paragraph
mainDocumentPart.addParagraphOfText("Open Source Java API for Word DOCX Documents");
// Save file
wordPackage.save(new File("FileFormat.docx"));
Extrageți text din DOCX
DOCX4J oferă clasa specializată pentru a extrage date din documentele Microsoft Word DOCX cu doar câteva rânduri de cod. În același mod, poate extrage, de asemenea, titluri, note de subsol, date de tabel și așa mai departe dintr-un fișier Word.
Extrageți text din DOCX Free - Java
// Load document
WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.load(new File("FileFormat.docx"));
// Load main document part
MainDocumentPart mainDocumentPart = wordMLPackage.getMainDocumentPart();
// Extract nodes
String textNodesXPath = "//w:t";
List<Object> textNodes= mainDocumentPart.getJAXBNodesViaXPath(textNodesXPath, true);
// Print text
for (Object obj : textNodes) {
Text text = (Text) ((JAXBElement) obj).getValue();
String textValue = text.getValue();
System.out.println(textValue);
}
Generați și editați documente Word folosind API-ul Java
DOCX4J le permite programatorilor de software să creeze noi documente Word în format de fișier DOCX. Dezvoltatorii pot încărca și un fișier Microsoft Word DOCX existent pentru a-l edita în funcție de nevoile aplicației lor. Vă permite să adăugați paragrafe noi, să inserați text, să aplicați alinierea și chenarele textului, să schimbați stilul textului și multe altele.
Convertiți documentele Microsoft Word Docx în PDF
Biblioteca Java open source docx4j oferă suport complet pentru generarea și conversia documentelor Microsoft Word docx în diferite formate populare. Docx4j oferă 3 moduri diferite de a converti documentele Microsoft Word docx în PDF. Următorul exemplu utilizează documents4j (care rulează de la distanță) pentru a converti un fișier docx în PDF.
Conversia documentelor EWord Docx în PDF prin Java
public class DocxFileToPDF {
public static void main(String[] args) throws IOException, Docx4JException {
File output = new File(System.getProperty("user.dir")+"/result.pdf");
FileOutputStream fos = new FileOutputStream(output);
Documents4jRemoteServices exporter = new Documents4jRemoteServices();
exporter.export(new File(System.getProperty("user.dir")+"/../docx4j-samples-docx4j/sample-docs/sample-docx.docx") , fos, DocumentType.MS_WORD);
fos.close();
}
}