Saltar al pie de página
USANDO IRONPDF

Cómo Hacer un Convertidor PDF en C#

Being able to create PDF documents from various file types is a great way of making a compiled, easy-to-read version of your original file. For example, you might have your portfolio displayed as a web page but want to convert it into an easy-to-present PDF file to share with potential employers. Or perhaps you have charts chock full of essential data you want to display as part of a report, with a PDF converter, you could convert your report and charts to PDF, and combine them into one easily shared document.

Today, we will look at how to convert files to PDF format using C#. We will also be looking at IronPDF, a powerful .NET PDF library, and how it can be used for PDF conversion. Whether you're dealing with HTML, images, or other documents, IronPDF provides a simple and efficient way to create and manipulate PDF files programmatically.

Why Use IronPDF for PDF Conversion?

IronPDF is an industry-standard library that simplifies PDF creation and conversion. It supports converting a wide range of formats to PDF such as HTML, images, and even other PDFs. Key features include:

  • High-fidelity PDF rendering: Thanks to its strong support for modern web standards, IronPDF is capable of consistently producing high-quality PDFs from web content like HTML and web pages.
  • PDF Generation: Generate PDF documents from file formats such as images, HTML, DOCX, and Markdown.
  • Security features: With IronPDF, handling PDF security such as PDF encryption and digital signing, is a breeze.
  • Easy integration: IronPDF integrates smoothly with ASP.NET and desktop applications.

Install IronPDF

Before we can begin converting files to PDF documents using IronPDF, we must install it and get it set up within our project. Thankfully, thanks to IronPDF's easy implementation, this can be done in no time. To install the IronPDF library, you can run the following command in the NuGet Package Manager Console:

Install-Package IronPdf

Alternatively, you can install it using Manage NuGet Packages for Solution:

How to Make a C# PDF Converter: Figure 1

C# PDF Conversion

Now, we can look at how IronPDF tackles PDF conversion from different file types. As we touched on earlier, IronPDF is a powerful PDF library capable of handling PDF conversion from many file types. This makes it extremely versatile in situations where you need to convert more than just HTML to PDF, which is what many other PDF libraries focus on. With IronPDF, you're able to do all your conversions in one place, without the need to install additional libraries.

Convert HTML String to PDF

One of the most common scenarios for PDF conversion is converting HTML content into a PDF document, and IronPDF makes this process seamless. For this example, we'll be converting an HTML string, but the process is similar for an HTML document, HTML page, or HTML files. First, we'll create a ChromePdfRenderer instance to render our HTML content as a PDF. Then, using RenderHtmlAsPdf(), we can convert the HTML content to PDF, before finally saving the PDF.

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // HTML content to convert
        string html = "<h1>This Document was Converted using IronPDF</h1><p>This document was converted from HTML content</p>";

        // Instantiate the ChromePdfRenderer class
        ChromePdfRenderer renderer = new ChromePdfRenderer();

        // Render the HTML content into a PDF document
        PdfDocument pdf = renderer.RenderHtmlAsPdf(html);

        // Save the rendered PDF document to a file
        pdf.SaveAs("html-to-pdf.pdf");
    }
}
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // HTML content to convert
        string html = "<h1>This Document was Converted using IronPDF</h1><p>This document was converted from HTML content</p>";

        // Instantiate the ChromePdfRenderer class
        ChromePdfRenderer renderer = new ChromePdfRenderer();

        // Render the HTML content into a PDF document
        PdfDocument pdf = renderer.RenderHtmlAsPdf(html);

        // Save the rendered PDF document to a file
        pdf.SaveAs("html-to-pdf.pdf");
    }
}
Imports IronPdf

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' HTML content to convert
		Dim html As String = "<h1>This Document was Converted using IronPDF</h1><p>This document was converted from HTML content</p>"

		' Instantiate the ChromePdfRenderer class
		Dim renderer As New ChromePdfRenderer()

		' Render the HTML content into a PDF document
		Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)

		' Save the rendered PDF document to a file
		pdf.SaveAs("html-to-pdf.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

Output

How to Make a C# PDF Converter: Figure 2

URL to PDF

Another common method of PDF conversion is converting a URL to PDF. This way, we can capture entire web pages as a pixel-perfect PDF. Using the URL https://www.nuget.org/packages/IronPdf/, we will utilize the ChromePdfRenderer class and IronPDF's support for modern web standards to generate a high-quality PDF in just a few lines of code.

using System;
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Instantiate the ChromePdfRenderer
        ChromePdfRenderer renderer = new ChromePdfRenderer();

        // Render the URL content into a PDF
        PdfDocument pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf/");

        // Save the PDF to a file
        pdf.SaveAs("url-to-pdf.pdf");
    }
}
using System;
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Instantiate the ChromePdfRenderer
        ChromePdfRenderer renderer = new ChromePdfRenderer();

        // Render the URL content into a PDF
        PdfDocument pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf/");

        // Save the PDF to a file
        pdf.SaveAs("url-to-pdf.pdf");
    }
}
Imports System
Imports IronPdf

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Instantiate the ChromePdfRenderer
		Dim renderer As New ChromePdfRenderer()

		' Render the URL content into a PDF
		Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf/")

		' Save the PDF to a file
		pdf.SaveAs("url-to-pdf.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

Output

How to Make a C# PDF Converter: Figure 3

Converting Images to PDF

IronPDF also supports the conversion of image file types, such as PNG, JPG, and GIF, to PDFs. This is a great way of compiling multiple images into one document. For our example, we'll take three different images, each in a different image format, and convert them into new PDFs, before merging them into one PDF to demonstrate how this can be used to convert multiple images into the same PDF. The ImageToPdfConverter class is used to carry out the conversion of the images.

using System.Collections.Generic;
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Define image file paths
        string jpgFile = "image-jpg.jpg";
        string pngFile = "image-png.png";
        string gifFile = "image-gif.gif";

        // Convert each image to a separate PDF document
        PdfDocument pdfA = ImageToPdfConverter.ImageToPdf(gifFile);
        PdfDocument pdfB = ImageToPdfConverter.ImageToPdf(pngFile);
        PdfDocument pdfC = ImageToPdfConverter.ImageToPdf(jpgFile);

        // Combine all the PDFs into a single document
        List<PdfDocument> pdfFiles = new List<PdfDocument> { pdfA, pdfB, pdfC };
        PdfDocument mergedPdf = PdfDocument.Merge(pdfFiles);

        // Save the merged PDF document to a file
        mergedPdf.SaveAs("images-to-pdf.pdf");
    }
}
using System.Collections.Generic;
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Define image file paths
        string jpgFile = "image-jpg.jpg";
        string pngFile = "image-png.png";
        string gifFile = "image-gif.gif";

        // Convert each image to a separate PDF document
        PdfDocument pdfA = ImageToPdfConverter.ImageToPdf(gifFile);
        PdfDocument pdfB = ImageToPdfConverter.ImageToPdf(pngFile);
        PdfDocument pdfC = ImageToPdfConverter.ImageToPdf(jpgFile);

        // Combine all the PDFs into a single document
        List<PdfDocument> pdfFiles = new List<PdfDocument> { pdfA, pdfB, pdfC };
        PdfDocument mergedPdf = PdfDocument.Merge(pdfFiles);

        // Save the merged PDF document to a file
        mergedPdf.SaveAs("images-to-pdf.pdf");
    }
}
Imports System.Collections.Generic
Imports IronPdf

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Define image file paths
		Dim jpgFile As String = "image-jpg.jpg"
		Dim pngFile As String = "image-png.png"
		Dim gifFile As String = "image-gif.gif"

		' Convert each image to a separate PDF document
		Dim pdfA As PdfDocument = ImageToPdfConverter.ImageToPdf(gifFile)
		Dim pdfB As PdfDocument = ImageToPdfConverter.ImageToPdf(pngFile)
		Dim pdfC As PdfDocument = ImageToPdfConverter.ImageToPdf(jpgFile)

		' Combine all the PDFs into a single document
		Dim pdfFiles As New List(Of PdfDocument) From {pdfA, pdfB, pdfC}
		Dim mergedPdf As PdfDocument = PdfDocument.Merge(pdfFiles)

		' Save the merged PDF document to a file
		mergedPdf.SaveAs("images-to-pdf.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

Output

How to Make a C# PDF Converter: Figure 4

Converting DOCX Files to PDF

IronPDF handles DOCX to PDF conversion seamlessly, in just a couple of lines of code. First, we will create a new instance of the DocxToPdfRenderer class, which we then use to convert the DOCX file using RenderDocxAsPdf(), before finally saving the PDF.

using IronPdf;

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

        // Convert the DOCX file to a PDF
        PdfDocument pdf = renderer.RenderDocxAsPdf("Meeting notes.docx");

        // Save the converted PDF document
        pdf.SaveAs("docx-to-pdf.pdf");
    }
}
using IronPdf;

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

        // Convert the DOCX file to a PDF
        PdfDocument pdf = renderer.RenderDocxAsPdf("Meeting notes.docx");

        // Save the converted PDF document
        pdf.SaveAs("docx-to-pdf.pdf");
    }
}
Imports IronPdf

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

		' Convert the DOCX file to a PDF
		Dim pdf As PdfDocument = renderer.RenderDocxAsPdf("Meeting notes.docx")

		' Save the converted PDF document
		pdf.SaveAs("docx-to-pdf.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

How to Make a C# PDF Converter: Figure 5

Conclusion

In today’s digital landscape, converting documents into a universally accessible format like PDF is crucial for ensuring consistency, portability, and professional presentation. With IronPDF, integrating robust C# PDF converter capabilities into your applications is not only efficient but also incredibly flexible.

Throughout this tutorial, we demonstrated how easy it is to convert HTML files, web pages, images, URLs, and even DOCX files into polished, professional PDFs. But this is just the tip of the iceberg. IronPDF offers a wide array of features beyond basic conversion, such as:

  • Merging multiple PDFs into a single document.
  • Adding security features like password protection and digital signatures.
  • Extracting text and images from existing PDFs.
  • Generating dynamic PDFs with real-time data, making it ideal for generating invoices, reports, and certificates.

Ready to take your document processing to the next level? Start experimenting with IronPDF today with its free trial, and unlock the full potential of PDF manipulation in your C# projects.

For further exploration of advanced features, optimizations, and practical examples, visit the official IronPDF documentation and join a community of developers transforming the way PDFs are handled in modern applications.

Preguntas Frecuentes

¿Cómo puedo convertir contenido HTML a un PDF en C#?

Puedes usar la clase ChromePdfRenderer de la biblioteca IronPDF para convertir contenido HTML a un PDF. El método RenderHtmlAsPdf() permite renderizar cadenas HTML en documentos PDF sin problemas.

¿Cuál es la mejor manera de convertir URLs a PDFs en C#?

IronPDF proporciona un método sencillo para convertir URLs a PDFs usando la clase ChromePdfRenderer. Esta característica captura toda la página web como un PDF perfectamente preciso.

¿Cómo convierto imágenes a PDFs usando C#?

Con IronPDF, puedes convertir archivos de imagen como PNG, JPG y GIF a PDFs usando la clase ImageToPdfConverter. Esto permite la fácil combinación de múltiples imágenes en un único documento PDF.

¿Puedo convertir archivos DOCX a PDF en C#?

Sí, puedes convertir archivos DOCX a PDF usando la clase DocxToPdfRenderer de IronPDF. El método RenderDocxAsPdf() ayuda a crear y guardar el contenido DOCX como un PDF.

¿Cuáles son las características clave de IronPDF para la conversión de PDF?

IronPDF ofrece características como renderizado de alta fidelidad, integración con ASP.NET, protección por contraseña, firmas digitales y la capacidad de combinar y extraer contenido de PDFs.

¿Existe una forma de fusionar múltiples PDFs usando C#?

IronPDF te permite fusionar múltiples PDFs en un documento. Esto se puede hacer utilizando las funcionalidades de fusión de PDF proporcionadas por la biblioteca.

¿Cómo puedo añadir seguridad a mis documentos PDF?

IronPDF ofrece características de seguridad como protección por contraseña y firmas digitales, asegurando la confidencialidad y autenticidad de tus documentos PDF.

¿Qué recursos están disponibles para aprender más sobre IronPDF?

Puedes encontrar recursos extensos y documentación en el sitio oficial de IronPDF, que incluye tutoriales, ejemplos y una guía detallada de referencia de la API.

¿IronPDF es totalmente compatible con .NET 10?

Sí, IronPDF está diseñado para ser compatible con .NET 10 (así como con .NET 9, 8, 7, 6, Core, Standard y Framework). Puede instalarlo mediante NuGet y utilizar todas sus funciones de conversión, edición, firma e implementación de HTML, URL, imágenes y DOCX sin necesidad de soluciones alternativas.
• La lista de compatibilidad oficial incluye .NET 10 entre las plataformas compatibles.

¿Puedo usar async/await con IronPDF en .NET 10 para la generación de PDF sin bloqueo?

Por supuesto. IronPDF es totalmente compatible con async/await en .NET 10, lo que permite operaciones sin bloqueo al renderizar archivos PDF (como con RenderHtmlAsPdfAsync() ), guardar archivos de forma asíncrona y una integración fluida en aplicaciones responsivas o basadas en servicios. Esto garantiza un mejor rendimiento y escalabilidad en entornos de desarrollo modernos de .NET 10.

Curtis Chau
Escritor Técnico

Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien ...

Leer más