In einem der früheren Posts haben wir gelernt, wie man programmgesteuert die OLE-Objekte in Dokumente mit C# einfügt. Heute werden wir in diesem Artikel PDF- und andere unterschiedliche Dokumente als OLE-Objekte in Word-Dokumente, Excel-Tabellen und PowerPoint-Präsentationsfolien mit Java einbetten.

Dieser Artikel führt Sie zu folgenden Themen:

Java-API für OLE-Objekte

GroupDocs.Merger für Java

Schritte und Beispiele in diesem Artikel verwenden GroupDocs.Merger for Java, um Dokumente über OLE (Object Linking and Embedding) in andere Dokumente einzufügen. Diese API ermöglicht es uns auch, mehrere Dokumente mit einem Minimum an Java-Codezeilen effizient zu kombinieren und aufzuteilen. Bevor Sie fortfahren, ist es besser, wenn Sie die Umgebung auf eine Ihrer relevanten Arten vorbereiten:

  1. Laden Sie die API aus dem Abschnitt downloads herunter.
  2. Für die Maven-basierten Projekte ist die folgende Konfiguration für Ihre pom.xml
<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-merger</artifactId>
        <version>20.7</version> 
</dependency>

PDF als OLE-Objekt mit Java in MS Word-Dokument einfügen

PDF in Word-Dokument einfügen

Schritt- und Codebeispiel unten ** fügt das PDF-Dokument mithilfe der GroupDocs.Merger-API als OLE-Objekt in Java ** in ein Word-Dokument ein.

  1. Instanziieren Sie das Objekt Merger mit dem Quellpfad oder -stream Textverarbeitungsdokument.
  2. Initialisieren Sie die OleWordProcessingOptions mit dem Pfad des PDF-Dokuments, das in das Word-Dokument eingebettet wird.
  3. Rufen Sie die Methode importDocument der Merger-Klasse auf.
  4. Speichern Sie das resultierende Word-Dokument, indem Sie die Methode save aufrufen.
// PDF als OLE-Objekt in ein Word-Dokument einbetten
int pageNumber = 1;
OleWordProcessingOptions oleWordsOptions = new OleWordProcessingOptions("PDF-document.pdf", pageNumber);
oleWordsOptions.setWidth(200); // Setting the width and height of embedded document
oleWordsOptions.setHeight(200);
// Importieren Sie das PDF in ein Word-Dokument
Merger merger = new Merger("document.docx"); // Source Word document
merger.importDocument(oleWordsOptions);
merger.save("output-document.docx");

Einfügen eines Word-Dokuments als OLE-Objekt in eine Excel-Tabelle mit Java

Word-Datei in Excel-Tabelle einfügen

Tabellenkalkulationen können auch andere Dokumente wie Word-Dokumente, Tabellenkalkulationen, Präsentationen, Bilder oder Soundclips usw. einbetten. Hier füge ich ein Word-Dokument als OLE-Objekt in eine Tabellenkalkulation ein.

  1. Initialisieren Sie das Klassenobjekt OleSpreadsheetOptions, indem Sie den Pfad des Word-Dokuments angeben, das in die Tabelle eingebettet wird.
  2. Legen Sie die Optionen wie Zeilen- und Spaltenpositionen fest.
  3. Initialisieren Sie das Klassenobjekt Merger mit dem Pfad des Tabellenkalkulationsdokuments.
  4. Rufen Sie die Methode importDocument auf, indem Sie die bereits festgelegte OLE-Tabellenkalkulationsoption bereitstellen.
  5. Speichern Sie die resultierende Tabelle mit dem eingebetteten Word-Dokument, indem Sie die Methode save aufrufen.
// Betten Sie ein Word-Dokument als OLE-Objekt in eine Excel-Tabelle ein
int pageNumber = 1;
OleSpreadsheetOptions oleCellsOptions = new OleSpreadsheetOptions("document.docx", pageNumber);
oleCellsOptions.setRowIndex(2); // Set row & column number of Spreasheet to embedded document
oleCellsOptions.setColumnIndex(1);
// Importieren Sie das Word-Dokument in Spreadsheet
Merger merger = new Merger("spreadsheet.xlsx"); // Source Spreadsheet
merger.importDocument(oleCellsOptions);
merger.save("output-spreadsheet.xlsx");

Excel-Tabelle als OLE-Objekt mit Java in die Präsentation einfügen

Excel-Tabelle in PowerPoint einfügen

Wenn wir unseren Präsentationen externe Dokumente hinzufügen müssen, können diese auf ähnliche Weise mit den wenigen Zeilen Java-Code, die unten erwähnt werden, an der genauen Stelle eingefügt werden:

  1. Initialisieren Sie das Klassenobjekt OlePresentationOptions und übergeben Sie den Pfad des Tabellenkalkulationsdokuments.
  2. Legen Sie die OLE-Präsentationsoptionen wie x- und y-Koordinaten, Höhe und Breite für das kommende eingebettete Arbeitsblatt fest.
  3. Instanziieren Sie das Klassenobjekt Merger mit dem Pfad des Präsentationsdokuments als Parameter.
  4. Betten Sie die Tabelle mit der Methode importDocument der Merger-Klasse in die Präsentation ein.
  5. Rufen Sie die Methode save auf, um die resultierende Präsentationsdatei zu erhalten.
// Betten Sie Spreadsheet als OLE-Objekt in eine Präsentation ein
int pageNumber = 1;
OlePresentationOptions oleSlidesOptions = new OlePresentationOptions("spreadsheet.xlsx", pageNumber);
// Legen Sie Koordinaten und Abmessungen fest
oleSlidesOptions.setX(10);
oleSlidesOptions.setY(10);
oleSlidesOptions.setHeight(200);
oleSlidesOptions.setWidth(200);
// Importieren Sie die Tabelle in Presentation
Merger merger = new Merger("presentation.pptx");
merger.importDocument(oleSlidesOptions);
merger.save("output-presentation.pptx");

Fazit

Wir haben gelernt, wie wir mit Java OLE-Objekte programmgesteuert in Word-, Excel- und Powerpoint-Dokumente einfügen können. Der Hauptunterschied beim Einbetten der Dokumente in verschiedene Arten von Quelldokumenten besteht lediglich in der Verwendung der jeweiligen OLE-Optionsklasse. Das ist es.

Um mehr über die Merger-API für Java zu erfahren, besuchen Sie Dokumentation. Bei Fragen hilft Ihnen das GroupDocs-Supportteam gerne im Free Support Forum weiter.

Siehe auch