Em um dos posts anteriores, aprendemos como inserir os objetos OLE em documentos com C# programaticamente. Hoje, neste artigo, incorporaremos PDF e outros documentos diferentes como objetos OLE em documentos do Word, planilhas do Excel, slides de apresentação do PowerPoint usando Java.

Este artigo irá orientá-lo sobre:

API Java para objetos OLE

GroupDocs.Merger for Java

As etapas e os exemplos neste artigo usam GroupDocs.Merger for Java para inserir documentos em outros documentos via OLE (Object Linking and Embedding). Essa API também nos permite combinar e dividir com eficiência vários documentos com linhas mínimas de código Java. Antes de prosseguir, será melhor se você preparar o ambiente de qualquer uma das maneiras relevantes:

  1. Faça o download da API na seção downloads.
  2. Para os projetos baseados em Maven, veja a seguir a configuração do seu 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>

Inserir PDF como objeto OLE no documento do MS Word usando Java

Inserir PDF no documento do Word

Etapa e exemplo de código abaixo insere o documento PDF em um documento do Word como um objeto OLE em Java usando a API GroupDocs.Merger.

  1. Instancie o objeto Merger com o caminho ou fluxo do _documento de processamento de palavras de origem.
  2. Inicialize o OleWordProcessingOptions com o caminho do documento PDF que será incorporado ao documento do Word.
  3. Chame o método importDocument da classe de fusão.
  4. Salve o documento do Word resultante chamando o método save.
// Incorporar PDF em um documento do Word como um objeto 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);
// Importar o PDF para um documento do Word
Merger merger = new Merger("document.docx"); // Source Word document
merger.importDocument(oleWordsOptions);
merger.save("output-document.docx");

Inserir documento do Word como objeto OLE na planilha do Excel usando Java

Inserir arquivo do Word na planilha do Excel

As planilhas também podem incorporar outros documentos, como documentos do Word, planilhas, apresentações, imagens ou clipes de som, etc. Aqui, estou adicionando um documento do Word em uma planilha como um objeto OLE.

  1. Inicialize o objeto da classe OleSpreadsheetOptions fornecendo o caminho do documento do Word que será incorporado à planilha.
  2. Defina as opções como posições de linha e coluna.
  3. Inicialize o objeto da classe Merger com o caminho do documento da planilha.
  4. Chame o método importDocument fornecendo a opção de planilha OLE já definida.
  5. Salve a planilha resultante com o documento do Word incorporado chamando o método save.
// Incorporar documento do Word em uma planilha do Excel como um objeto 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);
// Importar o documento do Word para a planilha
Merger merger = new Merger("spreadsheet.xlsx"); // Source Spreadsheet
merger.importDocument(oleCellsOptions);
merger.save("output-spreadsheet.xlsx");

Inserir planilha do Excel como objeto OLE na apresentação usando Java

Inserir planilha do Excel no PowerPoint

Da mesma forma, se precisarmos adicionar algum(s) documento(s) externo(s) às nossas apresentações, eles podem ser inseridos no local preciso com as poucas linhas de código Java mencionadas abaixo:

  1. Inicialize o objeto da classe OlePresentationOptions e passe o caminho do documento da planilha.
  2. Defina as opções de apresentação OLE como coordenadas xey, altura e largura para a próxima planilha incorporada.
  3. Instancie o objeto da classe Merger com o caminho do documento de apresentação como parâmetro.
  4. Incorpore a planilha na apresentação usando o método importDocument da classe Merger.
  5. Chame o método save para obter o arquivo de apresentação resultante.
// Incorporar planilha em uma apresentação como um objeto OLE
int pageNumber = 1;
OlePresentationOptions oleSlidesOptions = new OlePresentationOptions("spreadsheet.xlsx", pageNumber);
// Definir coordenadas e dimensões
oleSlidesOptions.setX(10);
oleSlidesOptions.setY(10);
oleSlidesOptions.setHeight(200);
oleSlidesOptions.setWidth(200);
// Importar a planilha para a apresentação
Merger merger = new Merger("presentation.pptx");
merger.importDocument(oleSlidesOptions);
merger.save("output-presentation.pptx");

Conclusão

Aprendemos como podemos inserir objetos OLE programaticamente em documentos do Word, Excel e Powerpoint usando Java. A principal diferença ao incorporar os documentos em vários tipos de documentos de origem é apenas o uso da respectiva classe de opções OLE. É isso.

Para saber mais sobre a API Merger para Java, visite documentação. Em caso de qualquer dúvida, a equipe de suporte do GroupDocs terá o maior prazer em auxiliá-lo no Fórum de suporte gratuito.

Veja também