Mesclar documentos

Mesclar documentos do Word on-line em Java

O Microsoft Word está praticamente disponível em todos os lugares, incluindo os computadores do trabalho, os computadores da escola e seu PC doméstico. Criamos cartas, relatórios, etc. no formato word e usamos clip art, escrevemos em uma variedade de fontes e tamanhos. Ao longo do tempo, geramos uma infinidade de documentos e, para arquivamento de longo prazo, esses documentos precisam ser combinados. Então, neste artigo, aprenderemos a técnica para mesclar documentos em Java.

API de mesclagem de documentos

O Aspose.Words Cloud fornece os recursos para criar, editar e renderizar documentos do MS Word, bem como do OpenOffice, e salvá-los em uma variedade de formatos suportados. Ele também suporta o recurso para carregar e combinar documentos do Word em um único documento consolidado. Então, vamos adicionar os seguintes detalhes ao seu pom.xml do tipo de build maven para que Aspose.Words Cloud SDK para Java seja adicionado ao projeto.

<repositories>
    <repository>
        <id>AsposeJavaAPI</id>
        <name>Aspose Java API</name>
        <url>https://repository.aspose.cloud/repo/</url>
    </repository>
</repositories>

<dependency>
    <groupId>com.aspose</groupId>
         <artifactId>aspose-words-cloud</artifactId>
        <version>22.5.0</version>
</dependency>

Caso ainda não o tenha feito, registre uma conta gratuita no painel do Aspose.Cloud usando o GitHub ou a conta do Google ou simplesmente inscreva-se e obtenha suas credenciais de cliente.

Mesclar documentos do Word em Java

Siga as instruções abaixo para mesclar documentos:

  • Primeiro, especifique as informações de ID do cliente e Segredo do cliente.
  • Em segundo lugar, crie um objeto da classe ApiClient onde passamos ClientID e ClientSecret como argumentos para o construtor. O terceiro argumento é baseUrl e, por padrão, ele aponta para https://api.aspose.cloud/.
  • Terceiro, crie um objeto da classe WordsApi que aceite o objeto ApiClient como um argumento para o construtor.
  • Agora crie uma instância da classe DocumentEntry e especifique o href do documento de origem do Word e defina o formato de importação do documento como KeepSourceFormatting.
  • Crie uma instância da classe DocumentEntryList e passe o objeto DocumentEntry (criado na etapa anterior) para o método addDocumentEntriesItem(…).
  • O próximo passo é criar uma instância da classe AppendDocumentRequest onde passamos o documento de entrada do Word, o objeto DocumentEntryList e o nome do arquivo mesclado resultante como argumentos para seu construtor.
  • Por fim, chame o método appendDocument(…) da classe WordsApi para realizar a operação de conversão.
// Obtenha clientId e clientSecret de https://dashboard.aspose.cloud/
String clientId = "c235e685-1aab-4cda-a95b-54afd63eb87f";
String clientSecret = "b8da4ee37494f2ef8da3c727f3a0acb9";

// se baseUrl for nulo, WordsApi usa https://api.aspose.cloud padrão 
// crie um objeto de ApiClient fornecendo ClientID e Client Secret específicos do usuário
ApiClient apiClient = new ApiClient(clientId,clientSecret,null);

// crie um objeto de WordsApi fornecendo ApiClient como argumento
WordsApi wordsApi = new WordsApi(apiClient);

// documento PDF de entrada
String inputFile = "file-sample.docx";
String firstFileToAppend = "test_multi_pages.docx";				
String resultantFile = "Resultant.docx";
				
// especifique o primeiro documento a ser anexado
DocumentEntry docEntry = new DocumentEntry().href(firstFileToAppend).importFormatMode("KeepSourceFormatting");

// especificar a lista de documentos a serem anexados
DocumentEntryList documentList = new DocumentEntryList().addDocumentEntriesItem(docEntry);
								
// Especifique os parâmetros de conversão
AppendDocumentRequest request = new AppendDocumentRequest(inputFile, documentList, null, null, null, null, resultantFile, null, null);

// salve o arquivo DOCX mesclado resultante
DocumentResponse result = wordsApi.appendDocument(request);

Combine documentos do Word usando comandos cURL

Os comandos cURL são amplamente populares devido à sua capacidade de serem flexíveis na conclusão de tarefas complexas. Também podemos usar comandos cURL para combinar documentos do Word. Antes de prosseguir, precisamos gerar um token de acesso JWT, pois as APIs REST são acessíveis apenas a pessoas autorizadas. Então, execute o seguinte comando para gerar o token de acesso JWT.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=c235e685-1aab-4cda-a95b-54afd63eb87f&client_secret=b8da4ee37494f2ef8da3c727f3a0acb9" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Para obter mais informações, visite Como obter um token JWT usando um ID de cliente e uma chave secreta de cliente.

Depois que o JWT for criado, execute o comando a seguir para combinar os arquivos file-sample.docx e testmultipages.docx. Como resultado, um arquivo mesclado final será gerado com o nome Resultant.docx.

curl -v "https://api.aspose.cloud/v4.0/words/test_doc.docx/appendDocument?destFileName=Resultant.docx" \
-X PUT \
-d "{'DocumentEntries':[{'Href':'test_multi_pages.docx', 'ImportFormatMode':'KeepSourceFormatting'}]}" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "Authorization: Bearer <JWT Token>"

Conclusão

Aprendemos sobre as etapas para mesclar documentos do Word usando trechos de código Java. Ao mesmo tempo, também aprendemos os detalhes sobre como combinar documentos do Word usando comandos cURL. Você também pode considerar explorar os recursos interessantes da API por meio da interface Swagger em um navegador da web.

Além disso, nossos Cloud SDKs são de código aberto e o código-fonte completo pode ser baixado do GitHub. Também recomendamos visitar o produto Documentação para obter detalhes sobre outros recursos interessantes oferecidos pela API. Seu feedback é muito importante para nós. Então, sinta-se à vontade para entrar em contato conosco usando nossos Fóruns de Suporte.

Artigos relacionados

Recomendamos fortemente que você visite os seguintes links para saber mais sobre: