USO DE IRONPDF

Cómo convertir Word (Docx) a PDF en C# (Tutorial)

Actualizado 30 de enero, 2025
Compartir:

Introducción

Convertir documentos de Word a PDF es un requisito común en muchas aplicaciones empresariales, desde la automatización de la generación de informes hasta la entrega de documentos de calidad profesional. PDFsson universalmente reconocidos por su formato consistente, características de seguridad y facilidad para compartir.

En este tutorial, lo guiaremos a través del proceso de convertir documentos de Word(Archivos DOCX)a PDF en C# usando elIronPDF biblioteca. Esta guía paso a paso te ayudará a integrar la funcionalidad de conversión de Word a PDF en tus aplicaciones .NET de manera rápida y sin problemas.

Requisitos previos

Antes de comenzar este tutorial, asegúrate de tener lo siguiente:

  1. Entorno de desarrollo

    • Una instalación funcional de Visual Studio(Se recomienda 2019 o posterior).

    • .NET 6.0 o un marco compatible de .NET instalado.
  2. *biblioteca IronPDF***

    • Instalación de IronPDF mediante NuGet

    • Una clave de licencia válida de IronPDF
  3. Un documento de Word de ejemplo

    • Preparar un archivo DOCX(p. ej., example.docx)para pruebas. Puedes crear uno utilizando Microsoft Word, Google Docs(exportado como DOCX)o cualquier editor compatible.
  4. Conocimientos básicos de C#

    • Familiaridad con las operaciones básicas de entrada/salida de archivos en C#.

¿Por qué convertir archivos de Word a PDF?

Beneficios del PDF sobre DOCX

PDF es el estándar de oro para compartir y archivar documentos debido a su:

  • Independencia de plataforma: Los PDFs se ven igual independientemente del sistema operativo o dispositivo utilizado para abrirlos.
  • Integridad de los datos: El texto, las imágenes, las fuentes y los diseños se preservan exactamente como se pretendía.
  • Seguridad: Los PDFs admiten cifrado, protección con contraseña y firmas digitales, garantizando la confidencialidad y autenticidad del documento.

Escenarios Comunes para la Conversión de Word a PDF

A continuación, se presentan algunos escenarios del mundo real en los que la conversión de Word a PDF es esencial:

  • Contratos y Documentos Legales: Genere contratos que conserven el formato y no puedan ser editados fácilmente.
  • Informes de negocios: Comparte informes pulidos y profesionales con un formato consistente.
  • Generación de Facturas: Automatice la creación de facturas en un formato inviolable.
  • Archivado de documentos: Guarda documentos importantes de Word en un formato a largo plazo y no modificable.

Configuración de la biblioteca IronPDF

Para seguir este tutorial, necesitarás la biblioteca de IronPDF.

Paso 1: Instalación de IronPDF

IronPDFestá disponible a través de NuGet. Abra su Consola del Administrador de Paquetes y ejecute:

Install-Package IronPdf
Install-Package IronPdf
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package IronPdf
VB   C#

También puede instalarlo a través del gestor de paquetes NuGet en Visual Studio. Simplemente ve a herramientas > Administrador de paquetes NuGet > Administrar paquetes NuGet para la solución:

Word To Pdf Csharp Tutorial 1 related to Paso 1: Instalación de IronPDF

Y luego busca IronPDF. Aquí puedes instalar la biblioteca IronPDF en tu proyecto.

Word To Pdf Csharp Tutorial 2 related to Paso 1: Instalación de IronPDF

Paso 2: Activar su licencia

IronPDF ofrece una prueba gratuita, necesitarás activar una clave de licencia para obtener la funcionalidad completa. Para activar, simplemente añade tu clave de licencia en tu código:

IronPdf.License.LicenseKey = "YOUR_LICENSE_KEY_HERE";
IronPdf.License.LicenseKey = "YOUR_LICENSE_KEY_HERE";
IronPdf.License.LicenseKey = "YOUR_LICENSE_KEY_HERE"
VB   C#

Documento de Word de entrada

Word To Pdf Csharp Tutorial 3 related to Documento de Word de entrada

Código de Ejemplo Básico

El siguiente código de ejemplo demuestra el proceso sencillo para convertir archivos DOCX a PDF.

using IronPdf;  
using System.IO;  

class Program  
{  
    static void Main(string[] args)  
    {  
        DocxToPdfRenderer renderer = new DocxToPdfRenderer();

    // Convert DOCX to PDF using IronPDF  
    PdfDocument pdf = renderer.RenderDocxAsPdf("newsletter.docx");

    // Save the resulting PDF to a file  
    pdf.SaveAs("output.pdf"); 
    }  
}
using IronPdf;  
using System.IO;  

class Program  
{  
    static void Main(string[] args)  
    {  
        DocxToPdfRenderer renderer = new DocxToPdfRenderer();

    // Convert DOCX to PDF using IronPDF  
    PdfDocument pdf = renderer.RenderDocxAsPdf("newsletter.docx");

    // Save the resulting PDF to a file  
    pdf.SaveAs("output.pdf"); 
    }  
}
Imports IronPdf
Imports System.IO

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		Dim renderer As New DocxToPdfRenderer()

	' Convert DOCX to PDF using IronPDF  
	Dim pdf As PdfDocument = renderer.RenderDocxAsPdf("newsletter.docx")

	' Save the resulting PDF to a file  
	pdf.SaveAs("output.pdf")
	End Sub
End Class
VB   C#

Documento PDF de salida

Word To Pdf Csharp Tutorial 4 related to Documento PDF de salida

Código Explicación

Para comenzar a convertir sus archivos DOCX a PDF, primero necesitamos instanciar elDocxToPdfRenderer. Esto manejará la conversión de su documento Word a formato PDF. El siguiente paso es crear un nuevoDocumentoPdfinstancia que contendrá el documento PDF recién creado, y utiliza el método RenderDocxAsPdf para convertir el archivo DOCX a PDF. Finalmente, todo lo que necesitas hacer es guardar el documento PDF en la ubicación deseada usando SaveAs y voilà! Acabas de convertir un archivo DOCX a PDF en solo tres sencillas líneas.

Funciones avanzadas para PDF mejorados

IronPDF está lleno de funciones avanzadas para ayudarte a personalizar y enriquecer tu salida de PDF:

1. Añadir marcas de agua

Las marcas de agua son útiles para el branding o para marcar documentos sensibles. Puedes añadirmarcas de aguadespués de convertir el PDF:

pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE Copy</h2>", 40, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE Copy</h2>", 40, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE Copy</h2>", 40, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center)
VB   C#

2. Agregar encabezados a tu PDF

Una de las personalizaciones más comunes para PDFs esagregando encabezadosa cada página. Los encabezados pueden incluir títulos de documentos, números de página, fechas o cualquier otra información que desees mostrar en la parte superior de cada página del PDF.

TextHeaderFooter textHeader = new TextHeaderFooter
{
    CenterText = "Weekly Newsletter!",
};

pdf.AddTextHeaders(textHeader);
TextHeaderFooter textHeader = new TextHeaderFooter
{
    CenterText = "Weekly Newsletter!",
};

pdf.AddTextHeaders(textHeader);
Dim textHeader As New TextHeaderFooter With {.CenterText = "Weekly Newsletter!"}

pdf.AddTextHeaders(textHeader)
VB   C#

3. Personalización del diseño del PDF

IronPDF te permite definir configuraciones de página, comomárgenes, orientaciónytamaño de página, antes de guardar tu PDF:

renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.portrait;

renderer.RenderingOptions.SetCustomPaperSizeinCentimeters(20, 20);

renderer.RenderingOptions.MarginTop = 30;
renderer.RenderingOptions.MarginLeft = 20;
renderer.RenderingOptions.MarginRight = 20;
renderer.RenderingOptions.MarginBottom = 30;
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.portrait;

renderer.RenderingOptions.SetCustomPaperSizeinCentimeters(20, 20);

renderer.RenderingOptions.MarginTop = 30;
renderer.RenderingOptions.MarginLeft = 20;
renderer.RenderingOptions.MarginRight = 20;
renderer.RenderingOptions.MarginBottom = 30;
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.portrait

renderer.RenderingOptions.SetCustomPaperSizeinCentimeters(20, 20)

renderer.RenderingOptions.MarginTop = 30
renderer.RenderingOptions.MarginLeft = 20
renderer.RenderingOptions.MarginRight = 20
renderer.RenderingOptions.MarginBottom = 30
VB   C#

Código de ejemplo completo con formato adicional

using IronPdf;
using IronPdf.Rendering;

public class Program
{

    public static void Main(string[] args)
    {
        DocxToPdfRenderer renderer = new DocxToPdfRenderer();

        renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait;

        renderer.RenderingOptions.SetCustomPaperSizeinCentimeters(15, 15);

        renderer.RenderingOptions.MarginTop = 15;
        renderer.RenderingOptions.MarginLeft = 20;
        renderer.RenderingOptions.MarginRight = 20;
        renderer.RenderingOptions.MarginBottom = 15;

        // Convert DOCX to PDF using IronPDF  
        PdfDocument pdf = renderer.RenderDocxAsPdf("newsletter.docx");

        pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE Copy</h2>", 40, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);

        TextHeaderFooter textHeader = new TextHeaderFooter
        {
            CenterText = "Weekly Newsletter!",
        };

        pdf.AddTextHeaders(textHeader);

        // Save the resulting PDF to a file  
        pdf.SaveAs("output.pdf");
    }
}
using IronPdf;
using IronPdf.Rendering;

public class Program
{

    public static void Main(string[] args)
    {
        DocxToPdfRenderer renderer = new DocxToPdfRenderer();

        renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait;

        renderer.RenderingOptions.SetCustomPaperSizeinCentimeters(15, 15);

        renderer.RenderingOptions.MarginTop = 15;
        renderer.RenderingOptions.MarginLeft = 20;
        renderer.RenderingOptions.MarginRight = 20;
        renderer.RenderingOptions.MarginBottom = 15;

        // Convert DOCX to PDF using IronPDF  
        PdfDocument pdf = renderer.RenderDocxAsPdf("newsletter.docx");

        pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE Copy</h2>", 40, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);

        TextHeaderFooter textHeader = new TextHeaderFooter
        {
            CenterText = "Weekly Newsletter!",
        };

        pdf.AddTextHeaders(textHeader);

        // Save the resulting PDF to a file  
        pdf.SaveAs("output.pdf");
    }
}
Imports IronPdf
Imports IronPdf.Rendering

Public Class Program

	Public Shared Sub Main(ByVal args() As String)
		Dim renderer As New DocxToPdfRenderer()

		renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait

		renderer.RenderingOptions.SetCustomPaperSizeinCentimeters(15, 15)

		renderer.RenderingOptions.MarginTop = 15
		renderer.RenderingOptions.MarginLeft = 20
		renderer.RenderingOptions.MarginRight = 20
		renderer.RenderingOptions.MarginBottom = 15

		' Convert DOCX to PDF using IronPDF  
		Dim pdf As PdfDocument = renderer.RenderDocxAsPdf("newsletter.docx")

		pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE Copy</h2>", 40, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center)

		Dim textHeader As New TextHeaderFooter With {.CenterText = "Weekly Newsletter!"}

		pdf.AddTextHeaders(textHeader)

		' Save the resulting PDF to a file  
		pdf.SaveAs("output.pdf")
	End Sub
End Class
VB   C#

Con esto, puedes convertir fácilmente tus archivos DOCX a un archivo PDF con formato personalizado para adaptarse a tus necesidades.

Documento PDF de salida

Word To Pdf Csharp Tutorial 5 related to Documento PDF de salida

Mejores prácticas para la conversión de Word a PDF

1. Optimizar tamaños de archivo

Reducir el tamaño del PDFporcomprimircualquier imagen dentro de su PDF para descargas más rápidas y un intercambio más fluido:

pdf.CompressImages(40);
pdf.CompressImages(40);
pdf.CompressImages(40)
VB   C#

2. Validar archivos de entrada

Siempre asegúrese de que el archivo DOCX exista y sea válido antes de procesarlo:

if (!File.Exists(docxPath))  
{  
    throw new FileNotFoundException($"File not found: {docxPath}");  
}
if (!File.Exists(docxPath))  
{  
    throw new FileNotFoundException($"File not found: {docxPath}");  
}
If Not File.Exists(docxPath) Then
	Throw New FileNotFoundException($"File not found: {docxPath}")
End If
VB   C#

3. Protege tus PDFs

Encripta documentos sensibles con una contraseña:

pdf.SecuritySettings.OwnerPassword = "SecurePassword123";
pdf.SecuritySettings.UserPassword = "Password";
pdf.SecuritySettings.OwnerPassword = "SecurePassword123";
pdf.SecuritySettings.UserPassword = "Password";
pdf.SecuritySettings.OwnerPassword = "SecurePassword123"
pdf.SecuritySettings.UserPassword = "Password"
VB   C#

Acerca de IronPDF

IronPDF es una potente biblioteca .NET que permite a los desarrolladores crear, manipular y convertir documentos PDF fácilmente. Ofrece una gama de funciones diseñadas para ayudarlo a automatizar y optimizar la generación y el procesamiento de documentos en aplicaciones C#. Ya sea que estés convirtiendo archivos HTML, DOCX o de imagen a PDF, o editando y extrayendo texto de PDFs existentes, IronPDF simplifica estas tareas con un mínimo de codificación.

Características principales de IronPDF

  1. Conversión de HTML a PDF:

    • Una de las características más potentes de IronPDF es su capacidad para convertircontenido HTML en PDF. Esto lo hace perfecto para aplicaciones web donde los usuarios necesitan descargar informes, facturas u otros documentos en formato PDF.

    • Admite HTML y CSS avanzados, incluida la ejecución de JavaScript, lo que garantiza que la salida de PDF coincida de cerca con el diseño de la página web.
  2. Conversión de imagen a PDF

    • IronPDF también puede tomar imágenes(JPEG, PNG, etc.) yconvertiren archivos PDF de alta calidad, lo cual es ideal para crear portafolios, libros de fotos y archivos de documentos escaneados. Alternativamente, IronPDF también admite la conversión de PDF a imagen.
  3. Edición de PDF:

    • Puede editar los archivos PDF existentes agregando texto, imágenes, formas, anotaciones o marcas de agua. La biblioteca también admite la fusión y división de archivos PDF, lo que la convierte en una excelente herramienta para aplicaciones de gestión de documentos.
  4. Relleno de formularios y generación de PDF:

    • IronPDF permite a los desarrolladores rellenar campos de formulario en PDFs existentes, lo que lo hace perfecto para aplicaciones donde los usuarios necesitan completar formularios interactivos y guardarlos como PDFs.
  5. Extracción de texto:

    • IronPDF puedeextraer textode archivos PDF, que luego pueden usarse para análisis de datos, búsqueda o exportación a otros formatos(como CSV o Excel). Es ideal para flujos de trabajo de procesamiento de documentos que necesitan analizar el contenido de PDFs.

Conclusión

IronPDFhace que la conversión de documentos de Word a PDF de forma programática en C# sea sencilla, confiable y rica en características. Con solo unas pocas líneas de código, puedes integrar esta funcionalidad en tus aplicaciones .NET, permitiendo a los usuarios generar PDFs profesionales de alta calidad a partir de archivos DOCX.

Al aprovechar IronPDF, los desarrolladores pueden optimizar los flujos de trabajo para:

  • Automatización de la generación de documentos para empresas.
  • Garantizar la integridad de los datos al compartir archivos entre plataformas.
  • Creando archivos seguros e inalterables de documentos importantes de Word.

    Además, las funciones avanzadas, como la marca de agua, la fusión de archivos y la aplicación de diseños personalizados, te permiten ir más allá de las conversiones básicas. Estas capacidades son ideales para desarrollar soluciones robustas en áreas como la gestión de contratos, la generación de facturas y la distribución de informes.

    IronPDF se destaca por su simplicidad, versatilidad y su API amigable para desarrolladores, convirtiéndolo en una herramienta esencial para cualquiera que trabaje con el procesamiento de documentos en .NET. Prueba IronPDF tú mismo con suprueba gratuitay vea cómo puede mejorar sus proyectos PDF hoy!

< ANTERIOR
Visor de PDF C# Aplicación Windows (Tutorial)
SIGUIENTE >
Cómo leer archivos PDF en C#