Word a PDF

Convertir Word a PDF en línea

Los documentos de Word (DOC/DOCX) son populares para almacenar y compartir información de oficina y se utilizan en Microsoft Word, OpenOffice y otras aplicaciones. Contienen texto formateado, imágenes, tablas, gráficos, diagramas, formato de página y configuraciones de impresión. Sin embargo, el formato PDF es incluso ampliamente aceptado porque la mayoría de los navegadores web modernos admiten la función para mostrar archivos PDF.

En este artículo, analizaremos los pasos para convertir documentos Word a formato PDF sin la automatización de MS Office ni Adobe Acrobat. La conversión completa se realiza mediante el SDK gratuito de Dart.

API de conversión de Word a PDF

Aspose.Words Cloud es nuestra galardonada API para crear, editar y convertir archivos a PDF y otros formatos de archivo compatibles. También puede trabajar con elementos como marcadores, comentarios, numeración de páginas, tablas, notas al pie, fuentes, campos, objetos de dibujo, encabezados y pies de página, etc. Ahora, según el alcance de este artículo, vamos a Aspose.Words Cloud SDK para Dart.

Instalación

El primer paso es descargar e instalar el entorno Dart. El siguiente paso es descargar el SDK, que está disponible en Flutter y GitHub. Sin embargo, nos centraremos en el SDK de Aspose.Words Cloud para Dart, que es compatible con Flutter.

Crea un proyecto Flutter en tu IDE favorito (en nuestro caso, usamos Android Studio) y luego importa el SDK de Dart a tu proyecto agregando la dependencia asposewordscloud en pubspec.yaml.

Agregar referencias de Aspose.Words

Imagen 1: Agregar Aspose.Words Cloud SDK para dependencias de Dart.

El siguiente paso importante es la creación de una cuenta gratuita en el panel de control de Aspose.Cloud. Si tiene una cuenta de GitHub o Google, simplemente regístrese o haga clic en el botón crear una nueva cuenta. Ahora obtenga sus credenciales de cliente personalizadas desde el panel de control.

Word a PDF con Dart

Una vez que hemos configurado el entorno, estamos listos para escribir el código para la conversión de documentos de Word a formato PDF. Siga los pasos que se definen a continuación para cumplir con este requisito.

  • En primer lugar, necesitamos agregar referencias para las bibliotecas requeridas.
  • En segundo lugar, el siguiente paso es definir las variables que contienen los detalles del ID del cliente y del secreto del cliente (como en panel de control).
  • En tercer lugar, cree un objeto de configuración que tome los detalles del ID del cliente y del secreto del cliente como argumentos.
  • Ahora el siguiente paso es crear un objeto de la clase WordsApi que tome la instancia de Configuración como argumentos.
  • El siguiente paso es leer el contenido del documento Word de entrada en la instancia de Archivo.
  • Para cargar el archivo al almacenamiento en la nube, utilice el método uploadFile(…) de WordsApi.
  • Ahora creamos una instancia de la clase SaveOptionsData donde definimos el formato resultante como PDF y el nombre del archivo de salida.
  • Penúltimo, cree una instancia de la clase SaveAsRequest que tome el nombre del documento de Word y el objeto SaveOptionsData como argumentos.
  • Por último, llame al método saveAs(…) de WordsApi para realizar la conversión.
import 'package:flutter/material.dart';
import 'package:aspose_words_cloud/aspose_words_cloud.dart';
import 'dart:io';
import 'dart:typed_data';

void main() {
  // llamar al método de conversión
  ConversionApp();
}

void ConversionApp()
{
  // Defina el ID del cliente y los detalles del secreto del cliente según la cuenta
  var clientId = "b1a1b925-cbd0-40c3-b7d5-075c93601243";
  var clientSecret = "343ebf767f3f53537a45ced31d6be34f";

  // Configurar el cliente de la API de Word
  var configuration = Configuration(clientId, clientSecret);
  
  // crear una instancia de WordsApi
  var wordsApi = WordsApi(configuration);

  // Cargar archivo desde el almacenamiento local
  var localFileContent = (File('/Users/nayyershahbaz/Downloads/GetStyles.docx').readAsBytesSync());
  var uploadRequest = UploadFileRequest(ByteData.view(localFileContent.buffer), 'fileStoredInCloud.docx');
  
  // subir archivo al almacenamiento en la nube
  wordsApi.uploadFile(uploadRequest);

  // Crear objeto SaveOptions
  var saveOptionsData = SaveOptionsData()
    
    // guardar el formato de salida como PDF
    ..saveFormat = 'pdf'
    
    // nombre para el PDF resultante
    ..fileName = 'destStoredInCloud.pdf';
  
  // Crear solicitud de Guardar como
  var saveAsRequest = SaveAsRequest('fileStoredInCloud.docx', saveOptionsData);
  
  // Guardar archivo en formato PDF
  wordsApi.saveAs(saveAsRequest);
}
API en la nube de Aspose.Words

Imagen 3: Vista previa de la aplicación iOS para la conversión de Word a PDF.

Convierte DOC a PDF usando el comando cURL

Debido a la arquitectura REST de la API de Aspose.Words Cloud, se puede acceder a ella desde cualquier plataforma mediante los comandos cURL. Dado que las API solo son accesibles para usuarios autorizados, necesitamos generar un token de acceso JWT basado en los detalles de ID de cliente y Secreto de cliente, tal como se especifica en el panel de Aspose.Cloud. Ejecute el siguiente comando para generar el token de acceso JWT.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=b1a1b925-cbd0-40c3-b7d5-075c93601243&client_secret=343ebf767f3f53537a45ced31d6be34f" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Ahora ejecute el siguiente comando cURL para cargar un archivo desde el sistema local al almacenamiento en la nube.

curl -X PUT "https://api.aspose.cloud/v4.0/words/storage/file/fileStoredInCloud.docx" \
-H  "accept: application/json" \
-H  "Authorization: Bearer <JWT Token>" \
-H  "Content-Type: multipart/form-data" \
-d {"fileContent":{}}

Ahora ejecute el siguiente comando cURL para convertir el documento de Word disponible en el almacenamiento en la nube al formato PDF y guardar la salida en el mismo almacenamiento en la nube.

curl -X PUT "https://api.aspose.cloud/v4.0/words/fileStoredInCloud.docx/saveAs" \
-H  "accept: application/json" \
-H  "Authorization: Bearer <JWT Token>" \
-H  "Content-Type: application/json" \
-d "{\"SaveFormat\":\"pdf\",\"FileName\":\"converted.pdf\"}"

Conclusión

Acabamos de conocer las increíbles capacidades de conversión de Word a PDF con menos líneas de código. El SDK es tan sorprendente que solo necesita concentrarse en la lógica empresarial de su aplicación y dejar de lado el procesamiento complejo de documentos de Word. Por lo tanto, este único SDK le permite generar aplicaciones para iOS y Android que son capaces de realizar la conversión de documentos de Word al formato PDF. También hemos analizado las ventajas de acceder a la API REST a través de los comandos cURL.

Dado que el SDK es de código abierto, el código fuente completo está disponible para descargar en GitHub.

Artículos relacionados

También le recomendamos visitar los siguientes enlaces para obtener más información sobre las capacidades de nuestras otras API.