Cómo convertir Microsoft Word a PDF

por Chaknith Bin

Un archivo DOCX es un documento creado en Microsoft Word, un programa de tratamiento de textos de Microsoft. Utiliza Office Open XML (OOXML) lo que la hace eficaz y compatible con diversos programas informáticos. 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.


Biblioteca NuGet C# para PDF

Instalar con NuGet

Install-Package IronPdf
o
Java PDF JAR

Descargar DLL

Descargar DLL

Instalar manualmente en su proyecto

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 permite personalizar aún más el PDF. He utilizado como ejemplo la plantilla "Currículum cronológico moderno" de Microsoft Word. Puede descargar el archivo DOCX de muestra aquí.

Vista previa de Microsoft Word

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;

//  Instanciar renderizador
DocxToPdfRenderer renderer = new DocxToPdfRenderer();

//  Renderizar a partir de un archivo DOCX
PdfDocument pdf = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx");

//  Guardar el PDF
pdf.SaveAs("pdfFromDocx.pdf");
Imports IronPdf

'  Instanciar renderizador
Private renderer As New DocxToPdfRenderer()

'  Renderizar a partir de un archivo DOCX
Private pdf As PdfDocument = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx")

'  Guardar el PDF
pdf.SaveAs("pdfFromDocx.pdf")
VB   C#

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
VB   C#

He modificado una plantilla proporcionada por Microsoft Word para nuestros fines. Descargue el archivo DOTX de muestra. Para nuestro caso de uso, vamos a establecer la propiedad MailMergePrintAllInOnePdfDocument a true, que combina los PDF 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

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();

//  Aplicar opciones de renderizado
DocxPdfRenderOptions options = new DocxPdfRenderOptions();

//  Configurar el PDF de salida para que se combine en un único documento PDF
options.MailMergePrintAllInOnePdfDocument = true;

//  Convertir DOTX a 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()

'  Aplicar opciones de renderizado
Private options As New DocxPdfRenderOptions()

'  Configurar el PDF de salida para que se combine en un único documento PDF
options.MailMergePrintAllInOnePdfDocument = True

'  Convertir DOTX a PDF
Dim pdfs = docxToPdfRenderer.RenderDocxMailMergeAsPdf(Of RecipientsDataModel)(recipients, "Party-invitation.dotx", options)

pdfs.First().SaveAs("mailMerge.pdf")
VB   C#

Salida PDF

Una vez creado el documento PDF, tiene la posibilidad de realizar cambios adicionales. Por ejemplo, exportarlo como PDF/A o PDF/UAasí como añadir un certificado digital. También puede manipular páginas individuales fusión, divisióny girarlas, y tiene la opción de aplicar anotaciones y favoritos.

Chaknith Bin

Ingeniero de software

Chaknith es el Sherlock Holmes de los desarrolladores. La primera vez que se le ocurrió que podría tener futuro en la ingeniería de software fue cuando hacía retos de código por diversión. Su trabajo se centra en IronXL e IronBarcode, pero se enorgullece de ayudar a los clientes con todos los productos. Chaknith aprovecha sus conocimientos, adquiridos hablando directamente con los clientes, para ayudar a mejorar los propios productos. Sus comentarios anecdóticos van más allá de los tickets de Jira y apoyan el desarrollo de productos, la documentación y el marketing, para mejorar la experiencia general del cliente.Cuando no está en la oficina, se le puede encontrar aprendiendo sobre aprendizaje automático, codificación y senderismo.