В одній із попередніх публікацій ми дізналися, як програмно вставляти об’єкти OLE у документи за допомогою C#. Сьогодні в цій статті ми будемо вбудовувати PDF та інші різні документи як об’єкти OLE у документи Word, електронні таблиці Excel, слайди презентації PowerPoint за допомогою Java.

У цій статті ви дізнаєтесь про:

Java API для об’єктів OLE

GroupDocs.Merger for Java

Кроки та приклади в цій статті використовують GroupDocs.Merger for Java для вставлення документів в інші документи за допомогою OLE (зв’язування та вбудовування об’єктів). Цей 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>

Вставте PDF як об’єкт OLE у документ MS Word за допомогою Java

Вставте PDF у документ Word

Наведений нижче приклад кроку та коду вставляє документ PDF у документ Word як об’єкт OLE у Java за допомогою API GroupDocs.Merger.

  1. Створіть екземпляр об’єкта Merger із шляхом або потоком документа вихідного текстового процесора.
  2. Ініціалізуйте OleWordProcessingOptions шляхом до документа PDF, який буде вбудовано в документ Word.
  3. Викличте метод importDocument класу злиття.
  4. Збережіть отриманий документ Word, викликавши метод save.
// Вставте PDF у документ Word як об’єкт OLE
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");

Вставте документ Word як об’єкт OLE в електронну таблицю Excel за допомогою Java

Вставте файл Word в електронну таблицю Excel

Електронні таблиці також можуть вставляти інші документи, наприклад документи Word, електронні таблиці, презентації, зображення чи звукові кліпи тощо. Тут я додаю документ Word до електронної таблиці як об’єкт OLE.

  1. Ініціалізуйте об’єкт класу OleSpreadsheetOptions, надавши шлях до документа Word, який буде вбудовано в електронну таблицю.
  2. Встановіть такі параметри, як положення рядків і стовпців.
  3. Ініціалізуйте об’єкт класу Merger шляхом до документа електронної таблиці.
  4. Викличте метод importDocument, надавши вже встановлений параметр електронної таблиці OLE.
  5. Збережіть отриману електронну таблицю з вбудованим документом Word, викликавши метод save.
// Вставте документ Word в електронну таблицю Excel як об’єкт OLE
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");

Вставте аркуш Excel як об’єкт OLE у презентацію за допомогою Java

Вставте аркуш Excel у PowerPoint

Подібним чином, якщо нам потрібно додати будь-які зовнішні документи до наших презентацій, їх можна вставити в точне місце за допомогою кількох рядків коду Java, згаданих нижче:

  1. Ініціалізуйте об’єкт класу OlePresentationOptions і передайте шлях до документа електронної таблиці.
  2. Встановіть параметри презентації OLE, як-от координати x і y, висоту та ширину для майбутньої вбудованої електронної таблиці.
  3. Створіть екземпляр об’єкта класу Merger із шляхом до документа презентації як параметром.
  4. Вставте електронну таблицю в презентацію за допомогою методу importDocument класу Merger.
  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");

Висновок

Ми дізналися, як програмно вставляти об’єкти OLE в документи Word, Excel і Powerpoint за допомогою Java. Основною відмінністю під час вбудовування документів у різні типи вихідних документів є лише використання відповідного класу OLE Options. Це воно.

Щоб дізнатися більше про Merger API для Java, відвідайте документацію. У разі будь-яких запитів команда підтримки GroupDocs з радістю допоможе вам на безкоштовному форумі підтримки.

Дивись також