在之前的一篇文章中,我们学习了如何以编程方式使用 C# 在文档中插入 OLE 对象。今天,在本文中,我们将使用 Java 将 PDF 和其他不同的文档作为 OLE 对象嵌入 Word 文档、Excel 电子表格、PowerPoint 演示幻灯片中

本文将指导您:

用于 OLE 对象的 Java API

GroupDocs.Merger for Java

本文中的步骤和示例使用 GroupDocs.Merger for Java 通过 OLE(Object Linking and Embedding) 将文档插入到其他文档中。这个 API 还允许我们用最少的 Java 代码行有效地组合和拆分多个文档。在继续之前,如果您以任何相关方式准备环境会更好:

  1. 下载 部分下载 API。
  2. 对于 基于 Maven 的项目,以下是您的 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>

使用 Java 将 PDF 作为 OLE 对象插入 MS Word 文档

在 Word 文档中插入 PDF

下面的步骤和代码示例**使用 GroupDocs.Merger API 将 PDF 文档作为 Java 中的 OLE 对象插入 Word 文档。

  1. 使用源 word processing document 路径或流实例化 Merger 对象。
  2. 使用将嵌入 Word 文档中的 PDF 文档的路径初始化 OleWordProcessingOptions
  3. 调用合并类的importDocument方法。
  4. 通过调用 save 方法保存生成的 word 文档。
// 将 PDF 作为 OLE 对象嵌入 Word 文档
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);
// 将 PDF 导入 Word 文档
Merger merger = new Merger("document.docx"); // Source Word document
merger.importDocument(oleWordsOptions);
merger.save("output-document.docx");

使用 Java 将 Word 文档作为 OLE 对象插入 Excel 电子表格

在 Excel 电子表格中插入 Word 文件

电子表格还可以嵌入其他文档,如 Word 文档、电子表格、演示文稿、图像或声音剪辑等。在这里,我将 Word 文档作为 OLE 对象添加到电子表格中。

  1. 通过提供将嵌入电子表格的 Word 文档的路径来初始化 OleSpreadsheetOptions 类对象。
  2. 设置行和列位置等选项。
  3. 用电子表格文档的路径初始化 Merger 类对象。
  4. 通过提供已设置的 OLE 电子表格选项来调用 importDocument 方法。
  5. 通过调用 save 方法保存具有嵌入 Word 文档的结果电子表格。
// 将 Word 文档作为 OLE 对象嵌入 Excel 电子表格
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);
// 将 Word 文档导入电子表格
Merger merger = new Merger("spreadsheet.xlsx"); // Source Spreadsheet
merger.importDocument(oleCellsOptions);
merger.save("output-spreadsheet.xlsx");

使用 Java 将 Excel 工作表作为 OLE 对象插入到演示文稿中

在 PowerPoint 中插入 Excel 工作表

同样,如果我们需要在演示文稿中添加任何外部文档,可以使用下面提到的几行 Java 代码将它们插入到精确位置:

  1. 初始化 OlePresentationOptions 类对象并传递电子表格文档的路径。
  2. 为即将到来的嵌入式电子表格设置 OLE 演示选项,例如 x 和 y 坐标、高度和宽度。
  3. 使用演示文档路径作为参数实例化 Merger 类对象。
  4. 使用 Merger 类的 importDocument 方法将电子表格嵌入到演示文稿中。
  5. 调用 save 方法获取生成的演示文件。
// 将电子表格作为 OLE 对象嵌入到演示文稿中
int pageNumber = 1;
OlePresentationOptions oleSlidesOptions = new OlePresentationOptions("spreadsheet.xlsx", pageNumber);
// 设置坐标和尺寸
oleSlidesOptions.setX(10);
oleSlidesOptions.setY(10);
oleSlidesOptions.setHeight(200);
oleSlidesOptions.setWidth(200);
// 将电子表格导入演示文稿
Merger merger = new Merger("presentation.pptx");
merger.importDocument(oleSlidesOptions);
merger.save("output-presentation.pptx");

结论

我们已经了解,如何使用 Java 以编程方式在 Word、Excel 和 Powerpoint 文档中插入 OLE 对象。将文档嵌入到各种源文档中的主要区别只是使用了各自的 OLE 选项类。就是这样。

要了解有关 Java 合并 API 的更多信息,请访问 文档。如有任何疑问,GroupDocs 支持团队将非常乐意在 免费支持论坛 上为您提供帮助。

也可以看看