在較早的一篇文章中,我們學習瞭如何以編程方式使用 C# 在文檔中插入 OLE 對象。今天,在本文中,我們將使用 Java 將 PDF 和其他不同的文檔作為 OLE 對象嵌入到 Word 文檔、Excel 電子表格、PowerPoint 演示幻燈片中。
本文將指導您了解:
- OLE 對象的 Java API
- 使用 Java 將 OLE 對象插入 MS Word 文檔
- 使用 Java 將 OLE 對象添加到 Excel 電子表格中
- 使用 Java 通過 OLE 將文檔插入演示文稿
OLE 對象的 Java API
本文中的步驟和示例使用 GroupDocs.Merger for Java 通過 OLE(對象鏈接和嵌入)將文檔插入其他文檔。該 API 還允許我們使用最少的 Java 代碼行高效地組合和拆分多個文檔。在繼續之前,如果您以任何相關方式準備環境會更好:
- 從 下載 部分下載 API。
- 對於基於 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 文檔中
下面的步驟和代碼示例使用 GroupDocs.Merger API 將 PDF 文檔作為 Java 中的 OLE 對象插入到 Word 文檔中。
- 使用源字處理文檔路徑或流實例化 Merger 對象。
- 使用將嵌入 Word 文檔的 PDF 文檔的路徑初始化 OleWordProcessingOptions。
- 調用合併類的 importDocument 方法。
- 通過調用 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 電子表格中
電子表格還可以嵌入其他文檔,如 Word 文檔、電子表格、演示文稿、圖像或聲音剪輯等。在這裡,我將 Word 文檔作為 OLE 對象添加到電子表格中。
- 通過提供將嵌入到電子表格中的 Word 文檔的路徑來初始化 OleSpreadsheetOptions 類對象。
- 設置行和列位置等選項。
- 使用電子表格文檔的路徑初始化 Merger 類對象。
- 通過提供已設置的 OLE 電子表格選項來調用 importDocument 方法。
- 通過調用 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 對象插入到演示文稿中
同樣,如果我們需要將任何外部文檔添加到我們的演示文稿中,可以使用下面提到的幾行 Java 代碼將這些文檔插入到精確位置:
- 初始化OlePresentationOptions類對象,傳遞電子表格文檔的路徑。
- 為即將到來的嵌入式電子表格設置 OLE 表示選項,例如 x 和 y 坐標、高度和寬度。
- 使用演示文檔路徑作為參數實例化 Merger 類對象。
- 使用 Merger 類的 importDocument 方法將電子表格嵌入到演示文稿中。
- 調用 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 支持團隊將非常樂意在 免費支持論壇 上為您提供幫助。