palabra para rebajar

Convertir Word a Markdown en Java

Microsoft Word se usa ampliamente para crear, editar y transformar documentos de Word (DOC/DOCX) en varios formatos. De manera similar, Markdown es un lenguaje de marcado liviano que puede usar para agregar elementos de formato a documentos de texto sin formato. Es un documento de texto sin formato que se podrá leer sin etiquetas que arruinen todo, pero aún debería haber formas de agregar modificadores de texto como listas, negrita, cursiva, etc. Entonces, si tenemos un documento de Word y necesitamos crear un archivo equivalente en la sintaxis de Markdown, se vuelve difícil crearlo manualmente. Sin embargo, una solución programática puede resolver el problema. Este artículo explicará todos los detalles sobre cómo desarrollar un convertidor de Word a Markdown utilizando Java Cloud SDK.

API de conversión de Word a Markdown

Nuestra API basada en REST llamada Aspose.Words Cloud es una solución increíble para implementar operaciones de creación, manipulación y conversión de documentos de MS Word a una variedad de formatos admitidos. Ahora, para implementar las mismas capacidades de conversión y procesamiento de documentos en la aplicación Java, necesitamos usar Aspose.Words Cloud SDK for Java, que es un contenedor alrededor de la API REST. Entonces, en el primer paso de la utilización del SDK, debemos agregar su referencia en nuestro proyecto Java al incluir la siguiente información en pom.xml (proyecto de tipo de compilación 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>

Una vez que se haya agregado la referencia del SDK en el proyecto, el siguiente paso importante es obtener las credenciales de su cliente desde Cloud Dashboard. De lo contrario, primero debe registrar una cuenta gratuita mientras usa una dirección de correo electrónico válida.

Word a MD en Java

Esta sección explica los pasos y los detalles relacionados sobre cómo podemos convertir Word a formato MD utilizando un fragmento de código Java. Vamos a usar dos opciones para cargar el documento de Word de entrada, es decir, desde el almacenamiento en la nube o la unidad local, y luego transformarlo al formato Markdown.

Cargar documento de Word desde la unidad local

  • En primer lugar, cree una instancia de WordsApi y pase las credenciales personalizadas como argumentos.
  • En segundo lugar, lea el contenido del documento de Word de entrada utilizando el método Files.readAllBytes(…) y obtenga el valor devuelto en una matriz byte[]
  • En tercer lugar, cree un objeto de ConvertDocumentRequest que tome como argumentos el archivo Word de entrada, el formato MD y el nombre del archivo Markdown resultante.
  • Ahora, llame al método convertDocument(…) para la conversión de Word a MD. El Markdown resultante se devuelve como flujo de respuesta, para guardarlo en la instancia byte[]
  • Finalmente, para guardar el Markdown resultante en la unidad local, cree un objeto de FileOutputStream y use su método de escritura (…)
// Para obtener más fragmentos de código, https://github.com/aspose-words-cloud/aspose-words-cloud-java

try
    {
        String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
	String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
		    
	// si baseUrl es nulo, WordsApi usa el valor predeterminado https://api.aspose.cloud
	WordsApi wordsApi = new WordsApi(clientId, clientSecret, null);
			
        // cargar documento de Word desde el sistema local
        File file1 = new File("sample_EmbeddedOLE.docx");

        // leer el contenido del documento de Word de entrada
        byte[] documentStream = Files.readAllBytes(file1.toPath());
  
        // formato de archivo resultante
        String format = "md";

        // crear una solicitud de conversión de documento donde proporcionamos el nombre de archivo resultante
        ConvertDocumentRequest convertRequest = new ConvertDocumentRequest(documentStream,format, null,null, null, null);
  
        // realice la conversión de word a markdown y guarde la salida en byte Array
        byte[] resultantFile = wordsApi.convertDocument(convertRequest);
        
        // Guarde la documentación de descuento resultante en la unidad local
	FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "resultant.md");
	fos.write(resultantFile);
	fos.close();
      
    }catch(Exception ex)
    {
	System.out.println(ex);
    }
palabra a Markdown

Imagen: - Vista previa de conversión de Word a Markdown

Puede considerar descargar el documento de Word de entrada desde sampleEmbeddedOLE.docx.

Cargar documento de Word desde el almacenamiento en la nube

  • Del mismo modo, primero debemos crear una instancia de WordsApi mientras pasamos credenciales personalizadas como argumentos.
  • En segundo lugar, cree un objeto de GetDocumentWithFormatRequest que tome como argumentos el nombre del archivo Word de entrada, el formato MD y el nombre del archivo Markdown resultante.
  • Finalmente, llame al método getDocumentWithFormat(..) que desencadena la operación de conversión de Word a Markdown. El archivo MD resultante se guarda en el almacenamiento en la nube
// Para obtener más fragmentos de código, https://github.com/aspose-words-cloud/aspose-words-cloud-java

try
    {
        String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
	String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
		    
	// si baseUrl es nulo, WordsApi usa el valor predeterminado https://api.aspose.cloud
	WordsApi wordsApi = new WordsApi(clientId, clientSecret, null);

        String format = "md";
        // ahora cree un nuevo objeto de GetDocumentWithFormatRequest 
        GetDocumentWithFormatRequest convertRequest = new GetDocumentWithFormatRequest("sample_EmbeddedOLE.docx",format,null, null, null,null,null,"Converted.md",null);

        // ahora llame al método para iniciar la operación de conversión
        // el archivo resultante se almacena en el almacenamiento en la nube
        wordsApi.getDocumentWithFormat(convertRequest);
      
    }catch(Exception ex)
    {
	System.out.println(ex);
    }

DOC a Markdown usando comandos cURL

Las API REST también brindan la flexibilidad de acceder desde cualquier plataforma con la ayuda de los comandos cURL. Entonces, en esta sección, discutiremos los detalles sobre cómo cargar un documento de Word desde el almacenamiento en la nube, realizar la conversión de DOCX a Markdown y guardar el archivo MD resultante en la unidad local. Ahora, primero debemos generar el token de acceso JWT (basado en las credenciales del cliente) usando el siguiente comando y luego realizar la conversión de DOCX a 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"

Una vez que se genera el JWT, ejecute el siguiente comando para cargar el documento de Word desde el almacenamiento en la nube y realizar la conversión de Word a Markdown. El archivo MD resultante se almacena en el disco 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"

Conclusión

Hemos llegado al final de este artículo donde hemos aprendido los detalles sobre cómo podemos convertir Word a Markdown mediante programación usando Java. Del mismo modo, también hemos explorado los pasos para convertir DOCX a Markdown a través de comandos cURL.

Otra opción para explorar las capacidades de la API es a través de SwaggerUI dentro de un navegador web. También recomendamos explorar la Documentación del producto, que es una increíble fuente de información para conocer otras características interesantes. En caso de que necesite descargar y modificar el código fuente de Cloud SDK, está disponible en GitHub (publicado bajo licencia MIT). Por último, en caso de que encuentre algún problema al usar la API, puede considerar comunicarse con nosotros para una resolución rápida a través del [foro de soporte del producto] gratuito 9.

Artículos relacionados

Visite los siguientes enlaces para obtener más información sobre: