Cómo convertir Microsoft Word a PDF en C
Un archivo DOCX es un documento creado en Microsoft Word, un programa de tratamiento de textos de Microsoft. Utiliza el estándar Office Open XML (OOXML), lo que lo hace eficiente y compatible con varios programas. Es el formato predeterminado de los documentos de Word desde Word 2007, en sustitución del antiguo formato DOC.
IronPDF permite convertir documentos DOCX en PDF y ofrece una función de combinación de correspondencia para generar lotes personalizados de documentos para destinatarios individuales. La conversión de DOCX a PDF garantiza la compatibilidad universal, conserva el formato y añade una capa de seguridad.
Comience con IronPDF
Comience a usar IronPDF en su proyecto hoy con una prueba gratuita.
How to Convert DOCX to PDF in C#
- Descargar la biblioteca C# para convertir DOCX a PDF
- Prepare el archivo DOCX que desea convertir
- Instancie la clase DocxToPdfRenderer para renderizar PDF desde un archivo DOCX
- Utilice el método
RenderDocxAsPdf
y proporcione la ruta del archivo DOCX - Utilice la función de combinación de correspondencia para generar un lote de documentos
Convertir un archivo DOCX en PDF Ejemplo
Para convertir un archivo de Microsoft Word a PDF, instancie la clase DocxToPdfRenderer. Utilice el método RenderDocxAsPdf
del objeto DocxToPdfRenderer proporcionando la ruta del archivo DOCX. Este método devuelve un objeto PdfDocument, lo que le permite personalizar aún más el PDF. He utilizado como ejemplo la plantilla "Currículum cronológico moderno" de Microsoft Word. Puedes descargar el archivo de ejemplo Modern Chronological Resume DOCX.
Vista previa de Microsoft Word

Ejemplo de código
Además, el método RenderDocxAsPdf
también acepta datos DOCX como bytes y flujos.
:path=/static-assets/pdf/content-code-examples/how-to/docx-to-pdf-from-file.cs
using IronPdf;
// Instantiate Renderer
DocxToPdfRenderer renderer = new DocxToPdfRenderer();
// Render from DOCX file
PdfDocument pdf = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx");
// Save the PDF
pdf.SaveAs("pdfFromDocx.pdf");
Imports IronPdf
' Instantiate Renderer
Private renderer As New DocxToPdfRenderer()
' Render from DOCX file
Private pdf As PdfDocument = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx")
' Save the PDF
pdf.SaveAs("pdfFromDocx.pdf")
Salida PDF
Ejemplo de combinación de correspondencia
Mail Merge, situado en la pestaña "Mailings" de Microsoft Word, permite crear un lote de documentos con información personalizada para cada destinatario o entrada de datos. Suele utilizarse para generar cartas, sobres, etiquetas o mensajes de correo electrónico personalizados, como invitaciones, boletines o cartas-formulario, en los que gran parte del contenido es el mismo, pero algunos detalles varían para cada destinatario.
Modelo
En primer lugar, vamos a crear un modelo para almacenar la información que se fusionará por correo en su marcador de posición correspondiente.
:path=/static-assets/pdf/content-code-examples/how-to/docx-to-pdf-mail-merge-model.cs
internal class RecipientsDataModel
{
public string Date { get; set; }
public string Location{ get; set; }
public string Recipients_Name { get; set; }
public string Contact_Us { get; set; }
}
Friend Class RecipientsDataModel
Public Property [Date]() As String
Public Property Location() As String
Public Property Recipients_Name() As String
Public Property Contact_Us() As String
End Class
He modificado una plantilla proporcionada por Microsoft Word para nuestros fines. Por favor, descargue el archivo de ejemplo DOTX de invitación a la fiesta. Para nuestro caso de uso, vamos a establecer la propiedad MailMergePrintAllInOnePdfDocument en true, lo que combina los PDFs en un único objeto PdfDocument. Los campos de fusión que vamos a utilizar son Fecha, Ubicación, Nombre del destinatario y Contacto.
Vista previa de Microsoft Word

Ejemplo de código
:path=/static-assets/pdf/content-code-examples/how-to/docx-to-pdf-mail-merge.cs
using IronPdf;
using System.Collections.Generic;
using System.Linq;
var recipients = new List<RecipientsDataModel>()
{
new RecipientsDataModel()
{
Date ="Saturday, October 15th, 2023",
Location="Iron Software Cafe, Chiang Mai",
Recipients_Name="Olivia Smith",
Contact_Us = "support@ironsoftware.com"
},
new RecipientsDataModel()
{
Date ="Saturday, October 15th, 2023",
Location="Iron Software Cafe, Chiang Mai",
Recipients_Name="Ethan Davis",
Contact_Us = "support@ironsoftware.com"
},
};
DocxToPdfRenderer docxToPdfRenderer = new DocxToPdfRenderer();
// Apply render options
DocxPdfRenderOptions options = new DocxPdfRenderOptions();
// Configure the output PDF to be combined into a single PDF document
options.MailMergePrintAllInOnePdfDocument = true;
// Convert DOTX to PDF
var pdfs = docxToPdfRenderer.RenderDocxMailMergeAsPdf<RecipientsDataModel>(
recipients,
"Party-invitation.dotx",
options);
pdfs.First().SaveAs("mailMerge.pdf");
Imports IronPdf
Imports System.Collections.Generic
Imports System.Linq
Private recipients = New List(Of RecipientsDataModel)() From {
New RecipientsDataModel() With {
.Date ="Saturday, October 15th, 2023",
.Location="Iron Software Cafe, Chiang Mai",
.Recipients_Name="Olivia Smith",
.Contact_Us = "support@ironsoftware.com"
},
New RecipientsDataModel() With {
.Date ="Saturday, October 15th, 2023",
.Location="Iron Software Cafe, Chiang Mai",
.Recipients_Name="Ethan Davis",
.Contact_Us = "support@ironsoftware.com"
}
}
Private docxToPdfRenderer As New DocxToPdfRenderer()
' Apply render options
Private options As New DocxPdfRenderOptions()
' Configure the output PDF to be combined into a single PDF document
options.MailMergePrintAllInOnePdfDocument = True
' Convert DOTX to PDF
Dim pdfs = docxToPdfRenderer.RenderDocxMailMergeAsPdf(Of RecipientsDataModel)(recipients, "Party-invitation.dotx", options)
pdfs.First().SaveAs("mailMerge.pdf")
Salida PDF
Una vez creado el documento PDF, tiene la posibilidad de realizar cambios adicionales. Estos incluyen exportarlo como PDF/A o PDF/UA, así como añadir un certificado digital. También puedes manipular páginas individuales combinando o dividiendo PDFs, y rotarlas, y tienes la opción de aplicar anotaciones y marcadores.