Mesclar Documentos do Word

Mesclar documentos do Word online em Java

Em um ambiente de equipe distribuída, vários membros da equipe podem trabalhar em determinados módulos do documento, que precisam ser combinados para produzir uma versão consolidada. Esta operação pode ser executada usando uma variedade de aplicativos, mas as etapas manuais para mesclar documentos do Word podem ser uma atividade tediosa. Então, para ter uma solução mais viável, vamos discutir os detalhes de como combinar documentos do Word usando Java SDK.

API de mesclagem de documentos

Aspose.Words Cloud SDK for Java permite que você introduza recursos de criação, manipulação e transformação de documentos do Word em aplicativos Java. Ele também fornece o recurso de combinar documentos do Word para gerar uma única saída unificada. Agora, para usar o SDK, adicione os seguintes detalhes em seu arquivo pom.xml do tipo de compilação maven.

<repositories>
    <repository>
        <id>AsposeJavaAPI</id>
        <name>Aspose Java API</name>
        <url>https://repository.aspose.cloud/repo/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-words-cloud</artifactId>
        <version>22.5.0</version>
    </dependency>
</dependencies>

Após a instalação, precisamos registrar uma conta gratuita no painel Aspose.Cloud usando o GitHub ou a conta do Google ou simplesmente se inscrever e obter suas credenciais de cliente.

Combine documentos do Word em Java

Siga as instruções fornecidas abaixo para combinar documentos do Word usando um trecho de código Java.

  • A primeira etapa é criar um objeto da classe WordsApi ao passar os detalhes do Client ID e Client Secret como argumentos
  • Em segundo lugar, crie um objeto de DocumentEntry que leva o documento a ser mesclado e, em seguida, defina o valor do método setImportFormatMode(..) como KeepSourceFormatting
  • Agora crie um objeto de ArrayList e adicione o objeto DocumentEntry dentro dele
  • Em seguida, crie um objeto de DocumentEntryList que receba o objeto ArrayList como argumento
  • Por último, mas não menos importante, crie um objeto de AppendDocumentOnlineRequest que use o arquivo de origem do Word e o objeto DocumentEntryList como argumentos
  • Por fim, chame o método appendDocumentOnline(..) da API para mesclar os documentos e salvar a saída no armazenamento em nuvem
For more examples, please visit https://github.com/aspose-words-cloud/aspose-words-cloud-java

try
    {
    // Obtenha ClientID e ClientSecret em https://dashboard.aspose.cloud/
    String clientId = "bbf94a2c-6d7e-4020-b4d2-b9809741374e";
    String clientSecret = "1c9379bb7d701c26cc87e741a29987bb";
  
    // se baseUrl for nulo, WordsApi usará https://api.aspose.cloud padrão
    WordsApi wordsApi = new WordsApi(clientId, clientSecret, null);

    String firstFile = "Resultant.docx";
    String documentToAppend = "TableDocument.doc";
    String resultantFile = "MergedFile.docx";
    
    // ler todos os bytes do documento do Word de entrada
    byte[] requestDocument = Files.readAllBytes(Paths.get("c://Downloads/"+firstFile).toAbsolutePath());
    
    DocumentEntry requestDocumentListDocumentEntries0 = new DocumentEntry();
    requestDocumentListDocumentEntries0.setHref("c://Downloads/"+documentToAppend);
    requestDocumentListDocumentEntries0.setImportFormatMode("KeepSourceFormatting");
     
    ArrayList<DocumentEntry> requestDocumentListDocumentEntries = new ArrayList<DocumentEntry>();
    requestDocumentListDocumentEntries.add(requestDocumentListDocumentEntries0);

    DocumentEntryList requestDocumentList = new DocumentEntryList();
    requestDocumentList.setDocumentEntries(requestDocumentListDocumentEntries);

    AppendDocumentOnlineRequest appendRequest = new AppendDocumentOnlineRequest(requestDocument, requestDocumentList, null, null, null, resultantFile, null, null);
    wordsApi.appendDocumentOnline(appendRequest);
    
    System.out.println("Combine Word Documents in Java sucessfull !");
    }catch(Exception ex)
    {
        System.out.println(ex);
    }

Mesclar documentos do Word usando comandos cURL

Os comandos cURL também podem ser usados para acessar APIs REST em qualquer plataforma. Portanto, nesta seção, discutiremos os detalhes sobre como mesclar documentos do Word usando comandos cURL. Agora, a primeira etapa é gerar o JSON Web Token (JWT), portanto, execute o seguinte comando no aplicativo do terminal.

 curl -v "https://api.aspose.cloud/connect/token" \
 -X POST \
 -d "grant_type=client_credentials&client_id=a41d01ef-dfd5-4e02-ad29-bd85fe41e3e4&client_secret=d87269aade6a46cdc295b711e26809af" \
 -H "Content-Type: application/x-www-form-urlencoded" \
 -H "Accept: application/json"

Assim que tivermos o token JWT, execute o seguinte comando para mesclar documentos do Word já disponíveis no armazenamento em nuvem.

curl -v -X PUT "https://api.aspose.cloud/v4.0/words/ComparisonResult.docx/appendDocument?destFileName=MergedFile.docx" \
-H  "accept: application/json" \
-H  "Authorization: Bearer <JWT Token>" \
-H  "Content-Type: application/json" \
-d "{\"DocumentEntries\":[{\"Href\":\"SampleMailMergeTemplate.docx\",\"ImportFormatMode\":\"KeepSourceFormatting\"}],\"ApplyBaseDocumentHeadersAndFootersToAppendingDocuments\":true}"

Conclusão

Discutimos os detalhes de como combinar documentos do Word em Java, bem como usar comandos cURL. Observe que o código-fonte completo do SDK pode ser baixado do GitHub. Além disso, para explorar os recursos da API, considere acessá-la por meio da interface de estilo.

Em caso de dúvidas ou dificuldades, visite o fórum de suporte gratuito.

Artigos relacionados

É altamente recomendável visitar os seguintes blogs