Convertir Word DOCX a PDF

¡Bienvenido de nuevo a la página principal de las API de formato de archivo! En el pasado reciente, escribí un par de publicaciones de blog para cubrir varios escenarios de conversión de Word (DOC/DOCX) a PDF mediante programación en aplicaciones .NET (usando C#) y Java. Dado que esta es una característica popular y ampliamente utilizada, pensé en cubrirla también para C++. Por lo tanto, en esta publicación, le mostraré cómo convertir Word DOC/DOCX a PDF en aplicaciones C++. Este artículo aborda las siguientes conversiones de Word a PDF:

  • Simple Word DOC/DOCX a PDF en C++.
  • DOCX a PDF con un estándar particular, es decir, PDF 1.5, PDF/A-1a, etc.
  • Conversión de páginas seleccionadas de un DOCX a PDF.
  • Aplique compresión de imagen/texto en la conversión de DOCX a PDF.

Biblioteca de conversión de Word a PDF de C++

Aspose.Words for C++ es una biblioteca avanzada para crear y manipular formatos de documentos de Word dentro de aplicaciones de C++ sin necesidad de MS Word. Puede instalarlo a través de NuGet o descargar el paquete completo que contiene los archivos de la biblioteca, así como ejemplos de código fuente listos para ejecutar.

Convierta Word DOC/DOCX a PDF en C++

Convertir un documento de Word a PDF es tan simple como usar Aspose.Words for C++. Los siguientes son los pasos para convertir un archivo DOC/DOCX a PDF.

  • Cree un objeto de la clase Document e inicialícelo con la ruta del documento de Word.
  • Llame al método Document->Save() para guardar el documento como PDF.

El siguiente ejemplo de código muestra cómo convertir DOCX a PDF en C++.

// Cargue el documento desde el disco.
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// Establecer la ruta del PDF de salida
System::String outputPath =  u"DOCX-to-PDF.pdf";
// Convertir DOCX a PDF
doc->Save(outputPath);
std::cout << "Converted DOCX to PDF successfuly.";

Documento de Word de entrada

DOCX a PDF C++

Documento PDF convertido

DOC a PDF en C++

Convierta DOCX a PDF/A u otros estándares de PDF en C++

El formato PDF es compatible con varios estándares de PDF, incluidos PDF/A, PDF/E, etc. Es posible que necesite convertir un archivo de Word a un estándar en particular, como PDF/A-1a. En tal caso, Aspose.Words for C++ le permite establecer el estándar de PDF deseado para el PDF convertido. Los siguientes son los pasos para establecer el estándar de PDF en la conversión de Word a PDF:

El siguiente ejemplo de código muestra cómo convertir Word DOCX a PDF con el estándar PDF/A-1a.

// Cargue el documento desde el disco.
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// Establecer la ruta del PDF de salida
System::String outputPath =  u"DOCX-to-PDFA.pdf";
// Establecer opciones de PDF
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>();
options->set_Compliance(PdfCompliance::PdfA1a);
// Guarde el documento en formato PDF.
doc->Save(outputPath, options);
std::cout << "Converted DOCX to PDF/A successfuly.";

Convertir páginas seleccionadas de Word a PDF en C++

También puede convertir solo las páginas seleccionadas en lugar de convertir todo el Word a PDF. Los siguientes son los pasos para convertir solo las páginas deseadas de Word a PDF:

  • Cargue el documento de Word usando la clase Document.
  • Establezca el índice de la página de inicio usando el método PdfSaveOptions->setPageIndex().
  • Establezca el número de páginas que desea convertir utilizando el método PdfSaveOptions->setPageCount().
  • Guarde el documento como PDF utilizando el método Document->Save().

El siguiente ejemplo de código muestra cómo convertir páginas seleccionadas de DOCX a PDF en C++.

// Cargue el documento desde el disco.
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// Establecer la ruta del PDF de salida
System::String outputPath =  u"DOCX-to-PDF.pdf";
// Establecer opciones de PDF
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>();
options->set_PageIndex(1);
options->set_PageCount(2);
// Guarde el documento en formato PDF.
doc->Save(outputPath, options);

Aplicar compresión de imagen/texto en conversión de DOCX a PDF

También puede comprimir el documento PDF resultante para reducir su tamaño. Aspose.Words for C++ le permite aplicar la compresión de texto e imagen usando los métodos PdfSaveOptions->setTextCompression() y PdfSaveOptions->setImageCompression() respectivamente. El siguiente ejemplo de código muestra cómo aplicar compresión al convertir DOCX a PDF en C++.

// Cargue el documento desde el disco.
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// Establecer la ruta del PDF de salida
System::String outputPath =  u"DOCX-to-PDF.pdf";
// Establecer opciones de PDF
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>();
// Establecer calidad JPEG
options->set_JpegQuality(100);
// Guarda el documento en formato PDF
doc->Save(outputPath, options);

Más información sobre Aspose.Words for C++

Puede explorar más sobre Aspose.Words for C++ utilizando la documentación. En caso de que encuentre algo confuso, no dude en hacérnoslo saber a través de nuestro foro.

Ver también