
Cómo convertir Word a PDF en línea
Los archivos de MS Word, incluidos DOC, DOCX, DOCM, DOTX, ODT, OTT, etc., son algunos de los formatos de archivo más populares para almacenar información y compartir datos. Muchas universidades, organismos gubernamentales u organizaciones públicas producen sus archivos en formato Word, pero debido a la variedad de formatos, el diseño del contenido de estos archivos se ve comprometido cuando se visualizan en varias plataformas. Por lo tanto, una solución viable es la conversión a un formato fijo que preserve la estructura y la fidelidad del documento en cualquier plataforma.
En este artículo, analizaremos la conversión de Word al formato PDF utilizando la API REST .NET.
- API de conversión de Word a PDF
- Cómo convertir Word a PDF en C#
- Convertir DOC a PDF en C#
- Conversión de DOCX a PDF en C#
- Word a PDF con el comando cURL
API de conversión de Word a PDF
Aspose.Words Cloud es una increíble API basada en REST que brinda la facilidad de crear, editar y convertir documentos de Word a otros formatos de archivo compatibles en cualquier plataforma. Según el alcance del artículo, vamos a utilizar Aspose.Words Cloud SDK para .NET para la conversión de Word a PDF.
Instalación
Ejecute el siguiente comando en la terminal de la línea de comandos para instalar el SDK.
nuget install Aspose.Words-Cloud
Para instalar el SDK desde el administrador de paquetes NuGet, siga los pasos que se especifican a continuación:
- Expanda el explorador de soluciones y haga clic derecho en la carpeta Paquetes.
- Introduzca Aspose.Words-Cloud en el campo de búsqueda.
- Ahora habilite la casilla de verificación cerca de Aspose.Words-Cloud en los resultados de búsqueda y haga clic en el botón Agregar paquete.
- El SDK al que se hace referencia se agrega al proyecto.
También necesitamos crear una cuenta gratuita visitando Aspose.Cloud dashboard donde podemos iniciar sesión con nuestra cuenta de GitHub o Google existente o podemos crear una nueva cuenta. Simplemente desplácese hacia abajo hasta la sección Credenciales del cliente para ver los detalles de ID y Secreto del cliente.
Cómo convertir Word a PDF en C#
Siga los pasos que se especifican a continuación para realizar la conversión de Word a PDF mediante el código C# .NET en Visual Studio. En este escenario, el archivo Word de entrada ya está disponible en el almacenamiento en la nube y el PDF resultante también se almacena en el almacenamiento en la nube.
- Cree una instancia de la clase Configuración que tome los detalles de ID de cliente y Secreto de cliente como argumentos.
- En segundo lugar, cree una instancia de la clase WordsApi y proporcione una instancia de configuración como argumento.
- En tercer lugar, cargue el archivo desde el sistema local al almacenamiento en la nube utilizando el método UploadFileRequest(..).
- El siguiente paso es crear un objeto de SaveOptionsData que define las propiedades del archivo resultante. Con este objeto, definimos SaveFormat como Pdf y el valor de ZipOutput se especifica como falso para que la salida no esté en el archivo .zip ni en otras propiedades.
- Ahora cree una instancia de SaveAsRequest que tome el nombre del archivo de entrada y los objetos SaveOptionsData como argumentos.
- Por último, llame al método SaveAs(…) de la clase WordApi que toma la instancia SaveAsrequest como argumento.
// Obtenga las credenciales del cliente desde https://dashboard.aspose.cloud/
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";
// Cree una instancia de configuración pasando el ID del cliente y los detalles secretos del cliente
var config = new Configuration { ClientId = clientID, ClientSecret = clientSecret };
// crear objeto WordsApi
var wordsApi = new WordsApi(config);
// documento de Word de entrada
string fileName = "test_multi_pages.doc";
// cargar archivo desde el sistema local
using (var file = System.IO.File.OpenRead("/Users/nshahbaz/Downloads/" + fileName))
{
// Subir documento original al almacenamiento en la nube
wordsApi.UploadFile(new UploadFileRequest(file, fileName, null));
}
// crear objeto SaveOptionsData
SaveOptionsData saveOptionsData = new SaveOptionsData()
{
SaveFormat = "pdf",
FileName = "myResultant.pdf",
AllowEmbeddingPostScriptFonts = true,
ZipOutput = false,
UpdateLastSavedTimeProperty = true,
UpdateSdtContent = true,
UpdateCreatedTimeProperty = true,
UpdateLastPrintedProperty = true
};
try
{
// Cree SaveAsRequest pasando el archivo de entrada Word y saveOptionsData
SaveAsRequest request = new SaveAsRequest(fileName, saveOptionsData);
// Inicializar la operación de conversión de Word a PDF
var output = wordsApi.SaveAs(request);
}
catch (Exception ex)
{
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}

Imagen 5: Vista previa de conversión de Word a PDF.
El archivo de muestra utilizado en el ejemplo anterior se puede descargar desde testmultipages.doc.
Convertir DOC a PDF en C#
En este escenario, vamos a convertir el archivo DOC cargado desde el almacenamiento local y convertir el resultado al formato PDF. El archivo resultante también se almacena en el almacenamiento en la nube.
- En primer lugar, cree una instancia de la clase Configuración que tome los detalles de ID de cliente y Secreto de cliente como argumentos.
- En segundo lugar, cree una instancia de la clase WordsApi y proporcione una instancia de configuración como argumento.
- En tercer lugar, cree un objeto de la clase ConvertDocumentRequest que tome el flujo de archivo local, el formato de salida y el nombre del archivo resultante como argumentos.
- Por último, llame al método ConvertDocument(..) para realizar la operación de conversión.
// Obtenga las credenciales del cliente desde https://dashboard.aspose.cloud/
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";
// Cree una instancia de configuración pasando el ID del cliente y los detalles secretos del cliente
var config = new Configuration { ClientId = clientID, ClientSecret = clientSecret };
// crear objeto WordsApi
var wordsApi = new WordsApi(config);
// archivo de palabra de entrada
string fileName = "test_multi_pages.doc";
// nombre del archivo resultante
string outputfile = "result.pdf";
try
{
// Cargue el archivo de Word desde el almacenamiento local y especifique el formato de salida
ConvertDocumentRequest request = new ConvertDocumentRequest(System.IO.File.OpenRead("/Users/nshahbaz/Downloads/" + fileName),"pdf",outputfile);
// realizar operación de conversión
var output = wordsApi.ConvertDocument(request);
}
catch (Exception ex)
{
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
Conversión de DOCX a PDF en C#
Analicemos el escenario en el que se convierte un archivo DOCX disponible en el almacenamiento en la nube y también se guarda el archivo PDF resultante en el almacenamiento en la nube. En este escenario, vamos a utilizar el método de solicitud HTTP GET.
- En primer lugar, cree una instancia de la clase Configuración que tome los detalles de ID de cliente y Secreto de cliente como argumentos.
- En segundo lugar, cree una instancia de la clase WordsApi y proporcione una instancia de configuración como argumento.
- El siguiente paso es cargar el archivo desde la unidad local al almacenamiento en la nube utilizando el método UploadFileRequest(…) de WordsApi.
- Penúltimo, crea un objeto de la clase GetDocumentWithFormatRequest que tome el nombre del archivo DOCX, el formato de salida y el nombre del archivo resultante como argumentos.
- Por último, llame al método GetDocumentWithFormat(…) para realizar la conversión.
// Obtenga las credenciales del cliente desde https://dashboard.aspose.cloud/
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";
// Cree una instancia de configuración pasando el ID del cliente y los detalles secretos del cliente
var config = new Configuration { ClientId = clientID, ClientSecret = clientSecret };
// crear objeto WordsApi
var wordsApi = new WordsApi(config);
// archivo docx de entrada
string fileName = "file-sample_1MB.docx";
// formato de salida como PDF
string format = "pdf";
// nombre del archivo resultante
string outputfile = "result.pdf";
// cargar el contenido del archivo DOCX desde la unidad local
using (var file = System.IO.File.OpenRead("/Users/nshahbaz/Downloads/" + fileName))
{
// Subir documento original al almacenamiento en la nube
wordsApi.UploadFile(new UploadFileRequest(file, fileName, null));
}
// Sube el archivo al almacenamiento en la nube
try
{
GetDocumentWithFormatRequest request = new GetDocumentWithFormatRequest(fileName,format,null,null,null,null,outputfile);
wordsApi.GetDocumentWithFormat(request);
}
catch (Exception ex)
{
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
Puede considerar descargar los archivos de recursos utilizados en el ejemplo anterior desde file-sample1MB.docx y result.pdf.

Imagen 6: Vista previa de conversión de DOCX a PDF.
Word a PDF con el comando cURL
En esta sección, accederemos a la API de Cloud a través de comandos cURL. Por lo tanto, el primer paso es generar un token de acceso JWT basado en los detalles del ID de cliente y el secreto de cliente.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=4ccf1790-accc-41e9-8d18-a78dbb2ed1aa&client_secret=caac6e3d4a4724b2feb53f4e460eade3" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Ahora ejecute el siguiente comando para cargar el archivo al almacenamiento en la nube.
curl -X PUT "https://api.aspose.cloud/v4.0/words/storage/file/file-sample_1MB.docx" \
-H "accept: application/json" \
-H "Authorization: Bearer <JWT Token>" \
-H "Content-Type: multipart/form-data" \
-d {"fileContent":{}}
Por último, utilice la API GetDocumentWithFormat para realizar la conversión de DOCX a PDF.
curl -X GET "https://api.aspose.cloud/v4.0/words/file-sample_1MB.docx?format=pdf&outPath=myOutput.pdf" \
-H "accept: application/octet-stream" \
-H "Authorization: Bearer <JWT Token>
Conclusión
Hemos analizado algunas de las increíbles funciones de conversión de Word a formato PDF con Aspose.Words Cloud. La conversión se puede realizar mediante el código .NET o mediante el comando cURL. Además, también puede explorar la API a través de Swagger UI en su navegador.
Tenga en cuenta que el código fuente completo del SDK está disponible para descargar en GitHub y en caso de que encuentre algún problema al usar la API, no dude en contactarnos a través del Foro de soporte de productos gratuito.
Artículos relacionados
Le recomendamos visitar los siguientes enlaces para obtener más información sobre: