Open-Source-Java-API für Word-DOCX-Dokumente

Erstellen, lesen, bearbeiten und konvertieren Sie Microsoft Word DOCX-Dateien, fügen Sie Text und Tabellen über die Java-Bibliothek hinzu.

DOCX4J ist eine JAXB-basierte Open-Source-Bibliothek (Apache v2) zum Bearbeiten von Microsoft Office-Dateiformaten. Es bietet die Funktionalität zum Lesen, Schreiben, Bearbeiten und Speichern des Microsoft Word 2007 DOCX-Dateiformats.

DOCX4J ähnelt dem OpenXML SDK von Microsoft, jedoch für Java. Es verwendet JAXB, um die In-Memory-Objektdarstellung zu erstellen. Mit der API können Sie Mircosoft Office-Dokumente generieren, bearbeiten, Texte und Absätze formatieren, Tabellen und Bilder einfügen und andere Formularelemente verwalten und vieles mehr. Grundsätzlich liegt der Schwerpunkt auf Leistung, wenn das Format dies unterstützt, können Sie dies über die API tun.

Previous Next

Erste Schritte mit DOCX4J

Zunächst muss das Java Development Kit (JDK) auf Ihrem System installiert sein. Die Referenzierung von DOCX4J in Ihrem Maven-basierten Java-Projekt ist sogar noch einfacher. Sie müssen lediglich die folgende Abhängigkeit in Ihrer pom.xml hinzufügen und Ihre IDE die DOCX4J-JAR-Dateien abrufen und referenzieren lassen.

DOCX4J Maven-Abhängigkeit

<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>
  

Hinzufügen von Absatz, Bild und Tabelle zu Word-Dokumenten

DOCX4J ermöglicht es den Entwicklern, Absätze und Bilder zu Word-Dokumenten hinzuzufügen. Die API bietet auch die Funktion zum Hinzufügen von Tabellen zu DOCX-Dokumenten und ermöglicht gleichzeitig das Erstellen einfacher und verschachtelter Tabellen mit benutzerdefinierten Daten.

Erstellen Sie DOCX Free mit 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"));

Text aus DOCX extrahieren

DOCX4J bietet die spezialisierte Klasse zum Extrahieren von Daten aus Microsoft Word DOCX-Dokumenten mit nur wenigen Codezeilen. Auf die gleiche Weise kann es auch Überschriften, Fußnoten, Tabellendaten usw. aus einer Word-Datei extrahieren.

Extrahieren Sie Text aus 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);
}                 

Erstellen und bearbeiten Sie Word-Dokumente mit der Java-API

DOCX4J ermöglicht Softwareprogrammierern, neue Word-Dokumente im DOCX-Dateiformat zu erstellen. Entwickler können auch eine vorhandene Microsoft Word DOCX-Datei laden, um sie entsprechend ihren Anwendungsanforderungen zu bearbeiten. Sie können damit neue Absätze hinzufügen, Text einfügen, Textausrichtung und -rahmen anwenden, Textstile ändern und vieles mehr.

Konvertieren Sie Microsoft Word Docx-Dokumente in PDF

Die Open-Source-Java-Bibliothek docx4j bietet vollständige Unterstützung für die Generierung und Konvertierung von Microsoft Word docx-Dokumenten in verschiedene gängige Formate. Dort bietet docx4j 3 verschiedene Möglichkeiten, Microsoft Word docx-Dokumente in PDF zu konvertieren. Im folgenden Beispiel wird documents4j (remote ausgeführt) verwendet, um eine docx-Datei in PDF zu konvertieren.

Konvertierung von EWord Docx-Dokumenten in PDF über 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();
}
}
 Deutsch