O Microsoft Word é amplamente utilizado para criar, editar e transformar documentos do Word (DOC/DOCX) em vários formatos. Da mesma forma, Markdown é uma linguagem de marcação leve que você pode usar para adicionar elementos de formatação a documentos de texto simples. É um documento de texto simples que deve ser legível sem tags bagunçando tudo, mas ainda deve haver maneiras de adicionar modificadores de texto como listas, negrito, itálico, etc. Portanto, se tivermos um documento do Word e precisarmos criar um arquivo equivalente na sintaxe do Markdown, fica difícil criá-lo manualmente. No entanto, uma solução programática pode resolver o problema. Este artigo explicará todos os detalhes sobre como desenvolver um conversor de word para markdown usando Java Cloud SDK.
API de conversão de Word para Markdown
Nossa API baseada em REST chamada Aspose.Words Cloud é uma solução incrível para implementar operações de criação, manipulação e conversão de documentos do MS Word em uma variedade de formatos suportados. Agora, para implementar os mesmos recursos de conversão e processamento de documentos no aplicativo Java, precisamos usar Aspose.Words Cloud SDK for Java que é um wrapper em torno da API REST. Portanto, na primeira etapa da utilização do SDK, precisamos adicionar sua referência em nosso projeto Java, incluindo as seguintes informações em pom.xml (projeto de tipo de construção maven).
<repositories>
<repository>
<id>aspose-cloud</id>
<name>artifact.aspose-cloud-releases</name>
<url>http://artifact.aspose.cloud/repo</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-words-cloud</artifactId>
<version>22.12.0</version>
</dependency>
</dependencies>
Depois que a referência do SDK for adicionada ao projeto, a próxima etapa importante é obter as credenciais do cliente no Cloud Dashboard. Caso contrário, você precisa primeiro registrar uma conta gratuita usando um endereço de e-mail válido.
Word para MD em Java
Esta seção explica as etapas e detalhes relacionados sobre como podemos converter o formato Word para MD usando o trecho de código Java. Vamos usar duas opções para carregar o documento do Word de entrada, ou seja, formar armazenamento em nuvem ou unidade local e, em seguida, transformá-lo no formato Markdown.
Carregar documento do Word da unidade local
- Em primeiro lugar, crie uma instância de WordsApi e passe credenciais personalizadas como argumentos
- Em segundo lugar, leia o conteúdo do documento do Word de entrada usando o método Files.readAllBytes(…) e obtenha o valor retornado em uma matriz byte[]
- Em terceiro lugar, crie um objeto de ConvertDocumentRequest que usa o arquivo Word de entrada, o formato MD e o nome do arquivo Markdown resultante como argumentos
- Agora, chame o método convertDocument(…) para conversão de Word para MD. O Markdown resultante é retornado como fluxo de resposta, para ser salvo na instância byte[]
- Finalmente, para salvar o Markdown resultante na unidade local, crie um objeto de FileOutputStream e use seu método write(…)
// Para mais trechos de código, por favor https://github.com/aspose-words-cloud/aspose-words-cloud-java
try
{
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// se baseUrl for nulo, WordsApi usará https://api.aspose.cloud padrão
WordsApi wordsApi = new WordsApi(clientId, clientSecret, null);
// carregar documento do word do sistema local
File file1 = new File("sample_EmbeddedOLE.docx");
// leia o conteúdo do documento do word de entrada
byte[] documentStream = Files.readAllBytes(file1.toPath());
// formato de arquivo resultante
String format = "md";
// criar solicitação de conversão de documento onde fornecemos o nome do arquivo resultante
ConvertDocumentRequest convertRequest = new ConvertDocumentRequest(documentStream,format, null,null, null, null);
// execute conversão de word para markdown e salve a saída em array de bytes
byte[] resultantFile = wordsApi.convertDocument(convertRequest);
// Salve a documentação de remarcação resultante na unidade local
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "resultant.md");
fos.write(resultantFile);
fos.close();
}catch(Exception ex)
{
System.out.println(ex);
}
Você pode fazer o download do documento de entrada do Word em sampleEmbeddedOLE.docx.
Carregar documento do Word do armazenamento em nuvem
- Da mesma forma, primeiro precisamos criar uma instância de WordsApi ao passar credenciais personalizadas como argumentos
- Em segundo lugar, crie um objeto de GetDocumentWithFormatRequest que usa o nome do arquivo Word de entrada, o formato MD e o nome do arquivo Markdown resultante como argumentos
- Por fim, chame o método getDocumentWithFormat(..) que aciona a operação de conversão de Word para Markdown. O arquivo MD resultante é salvo no armazenamento em nuvem
// Para mais trechos de código, por favor https://github.com/aspose-words-cloud/aspose-words-cloud-java
try
{
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// se baseUrl for nulo, WordsApi usará https://api.aspose.cloud padrão
WordsApi wordsApi = new WordsApi(clientId, clientSecret, null);
String format = "md";
// agora crie um novo objeto de GetDocumentWithFormatRequest
GetDocumentWithFormatRequest convertRequest = new GetDocumentWithFormatRequest("sample_EmbeddedOLE.docx",format,null, null, null,null,null,"Converted.md",null);
// agora chame o método para iniciar a operação de conversão
// o arquivo resultante é armazenado no armazenamento em nuvem
wordsApi.getDocumentWithFormat(convertRequest);
}catch(Exception ex)
{
System.out.println(ex);
}
DOC para Markdown usando comandos cURL
As APIs REST também oferecem flexibilidade para serem acessadas de qualquer plataforma com a ajuda de comandos cURL. Portanto, nesta seção, discutiremos os detalhes sobre como carregar o armazenamento em nuvem do formulário de documento do Word, realizar a conversão de DOCX para Markdown e salvar o arquivo MD resultante na unidade local. Agora, primeiro precisamos gerar o token de acesso JWT (com base nas credenciais do cliente) usando o seguinte comando e, em seguida, realizar a conversão de DOCX para Markdown.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Depois que o JWT for gerado, execute o seguinte comando para carregar o documento do Word do armazenamento em nuvem e realizar a conversão do Word para Markdown. O arquivo MD resultante é armazenado na unidade local
curl -v -X GET "https://api.aspose.cloud/v4.0/words/sample_EmbeddedOLE.docx?format=md" \
-H "accept: application/octet-stream" \
-H "Authorization: Bearer <JWT Token>" \
-o "newOutput.md"
Conclusão
Chegamos ao final deste artigo, onde aprendemos os detalhes sobre como podemos converter programaticamente o Word em Markdown usando Java. Da mesma forma, também exploramos as etapas para converter DOCX em Markdown por meio de comandos cURL.
Outra opção para explorar os recursos da API é por meio de SwaggerUI em um navegador da web. Também recomendamos explorar a Documentação do produto, que é uma fonte incrível de informações para aprender sobre outros recursos interessantes. Caso você precise baixar e modificar o código-fonte do Cloud SDK, ele está disponível no GitHub (publicado sob licença do MIT). Por fim, caso encontre algum problema ao usar a API, considere entrar em contato conosco para uma resolução rápida por meio do [fórum de suporte ao produto] gratuito 9.
Artigos relacionados
Por favor, visite os links a seguir para saber mais sobre: