Microsoft Word-Automatisierung – Erstellen, bearbeiten oder konvertieren Sie Word-Dokumente mit Java

Durch die Automatisierung von Word können Sie neue Word-Dokumente erstellen, vorhandene Dokumente bearbeiten oder ändern oder sie in andere Formate konvertieren, ohne Microsoft Office zu verwenden. Alle Aktionen, die wir über die Benutzeroberfläche von MS Word ausführen können, können auch programmgesteuert mithilfe von Automatisierung ausgeführt werden. In diesem Artikel erfahren Sie, wie Sie MS Word automatisieren, um Word-Dokumente mit Java zu erstellen, zu bearbeiten oder zu konvertieren.

Folgende Themen sollen in diesem Artikel behandelt werden:

Java Word Automation API zum Erstellen, Bearbeiten oder Konvertieren von Word-Dokumenten

Zur Automatisierung von Word verwenden wir die API Aspose.Words for Java. Es ist eine vollständige und funktionsreiche Word-Automatisierungslösung zum programmgesteuerten Erstellen, Bearbeiten oder Analysieren von Word-Dokumenten. Bitte entweder die JAR-Datei der API herunterladen oder einfach die folgende pom.xml-Konfiguration in einer Maven-basierten Java-Anwendung hinzufügen.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-words</artifactId>
    <version>21.11</version>
    <type>pom</type>
</dependency>

Erstellen Sie Word-Dokumente mit Java

Wir können Word-Dokumente programmgesteuert erstellen, indem wir die folgenden Schritte ausführen:

  • Erstellen Sie zunächst eine Instanz der Klasse Dokument. Diese Klasse repräsentiert ein Word-Dokument.
  • Erstellen Sie als Nächstes eine Instanz der Klasse DocumentBuilder mit dem Document-Objekt als Argument. Diese Klasse bietet Methoden zum Einfügen von Text, Bildern und anderen Inhalten sowie zum Festlegen der Formatierung von Schriftarten, Absätzen und Abschnitten.
  • Fügen Sie dann Elemente ein/schreiben Sie sie, um mithilfe des DocumentBuilder-Objekts Text, Absätze, Tabellen oder Bilder hinzuzufügen.
  • Rufen Sie schließlich die Methode Document.save() mit dem Ausgabedateipfad auf, um die erstellte Datei zu speichern.

Das folgende Codebeispiel zeigt, wie Sie ein Word-Dokument (DOCX) mit Java erstellen.

// Öffnen Sie das Dokument.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

// Legen Sie die Schriftart für die nächsten Elemente fest
Font font = builder.getFont();
font.setSize(25);
font.setBold(true);
font.setColor(Color.BLACK);
font.setName("Arial");

// Texte einfügen
builder.writeln("Welcome!");

// Legen Sie die Schriftart für die nächsten Elemente fest
font.setSize(12);
font.setBold(false);

// Absatz einfügen
builder.writeln("Aspose.Words for Java is a class library that enables your applications to perform a great range of document processing tasks.\r\n"
    + "\r\n"
    + "Aspose.Words supports most of the popular document formats such as DOC, DOCX, RTF, HTML, Markdown, PDF, XPS, EPUB, and others.\r\n"
    + "\r\n"
    + "With Aspose.Words for Java, you can generate, modify, convert, render, and print documents without third-party applications or Office Automation.");
builder.writeln();

font.setBold(true);
builder.writeln("This is a sample table");

font.setBold(false);
// Fügen Sie eine Tabelle ein
Table table = builder.startTable();
builder.insertCell();
table.autoFit(AutoFitBehavior.AUTO_FIT_TO_CONTENTS);

builder.getCellFormat().setVerticalAlignment(CellVerticalAlignment.CENTER);

builder.write("This is row 1 cell 1");
builder.insertCell();
builder.write("This is row 1 cell 2");
builder.endRow();
builder.insertCell();
builder.write("This is row 2 cell 1");
builder.insertCell();
builder.write("This is row 2 cell 2");
builder.endRow();
builder.endTable();
builder.writeln();

// Fügen Sie ein Bild ein
builder.insertImage("C:\\Files\\Words\\words_java.jpg");

// Seitenumbruch einfügen 
builder.insertBreak(BreakType.PAGE_BREAK);             
// Alle Elemente nach dem Seitenumbruch werden auf der nächsten Seite eingefügt.

// Speichern Sie das Dokument
doc.save("C:\\Files\\Words\\document.docx");
Erstellen Sie Word-Dokumente mit Java

Erstellen Sie Word-Dokumente mit Java.

Bearbeiten oder ändern Sie Word-Dokumente mit Java

Im vorherigen Abschnitt haben wir ein Word-Dokument erstellt. Jetzt bearbeiten wir es und ändern den Inhalt des Dokuments. Wir können Word-Dokumente programmgesteuert bearbeiten, indem wir die folgenden Schritte ausführen:

  • Laden Sie zunächst ein Word-Dokument mit der Klasse Document mit dem Pfad der Eingabedatei als Argument.
  • Greifen Sie als Nächstes über den Index auf den jeweiligen Abschnitt zu.
  • Greifen Sie dann auf den Inhalt des ersten Absatzes als Objekt der Klasse Run zu. Die Run-Klasse stellt eine Reihe von Zeichen mit derselben Schriftartformatierung dar. Der gesamte Text des Dokuments wird in Textfolgen gespeichert.
  • Legen Sie danach fest, dass der Text für den aufgerufenen Absatz aktualisiert werden soll.
  • Rufen Sie schließlich die Methode Document.save() mit dem Ausgabedateipfad auf, um die aktualisierte Datei zu speichern.

Das folgende Codebeispiel zeigt, wie Sie ein Word-Dokument (DOCX) mit Java bearbeiten.

// Dokument laden
Document doc = new Document("C:\\Files\\Words\\document.docx");

// Greifen Sie auf den Absatz zu
Run paragraph = doc.getSections().get(0).getBody().getFirstParagraph().getRuns().get(0);
paragraph.setText("This is updated text");  

// Speichern Sie das Dokument
doc.save("C:\\Files\\Words\\Document_updated.docx");
Bearbeiten oder ändern Sie Word-Dokumente mit Java

Bearbeiten oder ändern Sie Word-Dokumente mit Java.

Suchen und Ersetzen von Text in Word-Dokumenten mit Java

Wir können auch den Inhalt von Word-Dokumenten aktualisieren, indem wir den Such- und Ersetzungsmechanismus der API verwenden. Wir können dies programmgesteuert tun, indem wir die folgenden Schritte ausführen:

  • Laden Sie zunächst ein Word-Dokument mit der Klasse Document mit dem Pfad der Eingabedatei als Argument.
  • Erstellen Sie als Nächstes eine Instanz der Klasse FindReplaceOptions.
  • Rufen Sie dann die Methode replace() mit der Suchzeichenfolge, der Ersetzungszeichenfolge und dem FindReplaceOptions-Objekt als Argumente auf. Diese Methode soll jedes Vorkommen des Suchstrings durch den Ersetzungsstring ersetzen.
  • Rufen Sie schließlich die Methode Document.save() mit dem Ausgabedateipfad auf, um die aktualisierte Datei zu speichern.

Das folgende Codebeispiel zeigt, wie Sie mithilfe von Java bestimmten Text in einem Word-Dokument (DOCX) suchen und ersetzen.

// Dokument laden
Document doc = new Document("C:\\Files\\Words\\document.docx");

// Aktualisieren Sie mit Suchen und Ersetzen
// Geben Sie die Suchzeichenfolge an und ersetzen Sie die Zeichenfolge mit der Replace-Methode.
doc.getRange().replace("Aspose.Words", "Hello", new FindReplaceOptions());

// Speichern Sie das Dokument
doc.save("C:\\Files\\Words\\Document_updated.docx");
Suchen und Ersetzen von Text in Word-Dokumenten mit Java

Suchen und Ersetzen von Text in Word-Dokumenten mit Java

Konvertieren Sie Word-Dokumente mit Java

Wir können Word-Dokumente programmgesteuert in andere Formate wie PDF, XPS, EPUB, HTML, JPG, PNG usw. konvertieren, indem Sie die folgenden Schritte ausführen:

  • Laden Sie zunächst ein Word-Dokument mit der Klasse Document mit dem Pfad der Eingabedatei als Argument.
  • Erstellen Sie als Nächstes eine Instanz der Klasse PdfSaveOptions mit dem Document-Objekt als Argument. Diese Klasse bietet zusätzliche Optionen beim Speichern eines Dokuments im PDF-Format.
  • Geben Sie dann die Konformitätsstufe der PDF-Standards für das Ausgabedokument an, indem Sie PdfSaveOptions.Compliance auf PdfCompliance.PDF17 setzen.
  • Rufen Sie schließlich die Methode Document.save() mit dem Ausgabedateipfad und dem PdfSaveOptions-Objekt als Argument auf, um die PDF-Datei zu speichern.

Das folgende Codebeispiel zeigt, wie Sie ein Word-Dokument (DOCX) mit Java in ein PDF konvertieren.

// Dokument laden
Document doc = new Document("C:\\Files\\Words\\document.docx");

// Bieten Sie PDFSaveOption-Konformität mit PDF17
PdfSaveOptions options = new PdfSaveOptions();
options.setCompliance(PdfCompliance.PDF_17);

// Konvertieren Sie Word in PDF
doc.save("C:\\Files\\Words\\output.pdf", options);
Konvertieren Sie Word-Dokumente in PDF.

Konvertieren Sie Word-Dokumente mit Java

Analysieren Sie Word-Dokumente mit Java

Wir können Word-Dokumente parsen und den Inhalt programmgesteuert als Klartext extrahieren, indem wir die folgenden Schritte ausführen:

  • Laden Sie ein Word-Dokument mit der Klasse Document mit dem Pfad der Eingabedatei als Argument.
  • Rufen Sie die Methode Document.save() auf, um das Word-Dokument als Textdatei zu speichern. Diese Methode nimmt den Pfad der Ausgabedatei als Argument.

Das folgende Codebeispiel zeigt, wie ein Word-Dokument (DOCX) mit Java analysiert wird.

// Laden Sie das Dokument von der Festplatte.
Document doc = new Document("C:\\Files\\Words\\document.docx");

// Als Klartext speichern 
doc.save("C:\\Files\\Words\\output.txt");
Text aus Word-Dokumenten extrahieren.

Analysieren Sie Word-Dokumente mit Java.

Holen Sie sich eine kostenlose Lizenz

Bitte testen Sie die API ohne Evaluierungseinschränkungen, indem Sie eine kostenlose temporäre Lizenz anfordern.

Fazit

In diesem Artikel haben wir gelernt, wie Sie Word automatisieren können, um Word-Dokumente mit Java zu erstellen, zu bearbeiten oder zu konvertieren. Wir haben auch gesehen, wie Text in Word-Dokumenten programmgesteuert gesucht und ersetzt wird. Außerdem können Sie in der Dokumentation mehr über Aspose.Words for Java API erfahren. Bei Unklarheiten können Sie uns gerne im Forum kontaktieren.

Siehe auch