USO DE IRONPDF

Cómo convertir HTML a PDF en ASP .NET usando C#

Publicado en 23 de octubre, 2024
Compartir:

En las aplicaciones web modernas, la generación de documentos a partir de contenido HTML es un requisito habitual. Tanto si necesita crear facturas, informes o cualquier otro tipo de documento, la conversión de HTML a PDF puede realizarse de forma eficaz con la biblioteca IronPDF en ASP.NET utilizando C#.

Hoy exploraremos cómo configurar IronPDF y utilizarlo para convertir contenido HTML en un documento PDF.

Cómo convertir HTML a PDF en ASP.NET con IronPDF

  1. Cree un proyecto ASP.NET utilizando Visual Studio o el IDE de su elección.

  2. Instale IronPDF y configure su clave de licencia.

  3. Cree un nuevo controlador o página en la que desee gestionar la conversión a PDF.

  4. Escriba su lógica de conversión dentro del controlador.

  5. Configure el enrutamiento para permitir el acceso a su acción de generación de PDF.

Descripción general de IronPDF

IronPDF es una potente biblioteca PDF que permite a los desarrolladores leer, crear y manipular documentos PDF. Con un amplio conjunto de funciones y un proceso de instalación rápido y sencillo, puede llevar sus proyectos PDF al siguiente nivel en muy poco tiempo gracias a IronPDF. Su intuitiva API es fácil de aprender, lo que la convierte en una opción ideal si lo que busca es generar documentos PDF dinámicos, realizar tareas de seguridad en PDF, anotaciones en PDF, etc. directamente desde su aplicación web.

Características

  • Conversión de PDF: IronPDF puede convertir archivos HTML a PDF, con su total compatibilidad con los estándares web modernos, puede estar seguro de que IronPDF devolverá de forma consistente PDFs con píxeles perfectos a partir de sus páginas HTML. IronPDF también puede convertir archivos PDF desde otros formatos como DOCX, imágenes, RTF y más.
  • Generación de PDF: Con IronPDF, puede generar archivos PDF a partir de cualquier página web, archivo ASPX, cadena HTML, etc.
  • Funciones de seguridad: Con IronPDF, siempre puede estar seguro de que los archivos PDF confidenciales están protegidos gracias a sus funciones de seguridad. Utilice IronPDF para cifrar sus archivos PDF, establecer contraseñas y establecer permisos para sus archivos PDF.
  • Funciones de edición de PDF: Con IronPDF puedes procesar documentos PDF existentes, editarlos y leer archivos PDF con facilidad. IronPDF ofrece funciones de edición como añadir encabezados y pies de página, estampar texto e imágenes en las páginas PDF, añadir marcas de agua personalizadas al PDF, trabajar con formularios PDF y dividir o combinar archivos PDF.

Requisitos previos

Antes de empezar, asegúrese de tener:

*Visual Studio u otro entorno de desarrollo C# configurado.

*Biblioteca IronPDF instalado. Puede obtenerlo en NuGet o directamente en el sitio web de IronPDF.

Crear un nuevo proyecto ASP.NET

Inicie Visual Studio y seleccione el tipo de proyecto ASP.NET que mejor se adapte a sus necesidades. En el ejemplo de hoy, crearé una aplicación web ASP.NET Core(Controlador modelo-vista).

Cómo convertir HTML a PDF en ASP .NET utilizando C#: Figura 1

A continuación, introduzca el nombre de su proyecto y elija la ubicación para alojarlo.

Cómo convertir HTML a PDF en ASP .NET utilizando C#: Figura 2

Por último, elija su .NET Framework para el proyecto y cambie cualquier configuración adicional para el proyecto, como el tipo de autenticación o la activación de la compatibilidad con contenedores y Docker.

Cómo convertir HTML a PDF en ASP .NET utilizando C#: Figura 3

Crear un controlador

Para crear un nuevo controlador que contenga nuestro código HTML a PDF, primero haga clic con el botón derecho del ratón en la carpeta "Controladores" del explorador de soluciones y seleccione "Añadir -> Controlador".

Cómo convertir HTML a PDF en ASP .NET utilizando C#: Figura 4

Esto hará que se abra una nueva ventana, en la que podrá elegir qué forma de controlador desea añadir al proyecto. Hemos elegido un controlador MVC vacío.

Cómo convertir HTML a PDF en ASP .NET utilizando C#: Figura 5

Por último, damos un nombre al nuevo controlador y hacemos clic en "Añadir" para incorporarlo a nuestro proyecto.

Cómo convertir HTML a PDF en ASP .NET utilizando C#: Figura 6

Añadir código de conversión de HTML a PDF

Ahora que hemos creado nuestro proyecto ASP.NET, podemos empezar a escribir el código para convertir el contenido de un archivo HTML en un PDF. Empezaremos con un ejemplo sencillo de cadena HTML a PDF, antes de estudiar la conversión de contenido HTML con personalización.

using IronPdf;
using Microsoft.AspNetCore.Mvc;
namespace IronPdfTest.Controllers
{
    public class PdfController : Controller
    {
        public IActionResult GeneratePdf()
        {
        // String of HTML code to be converted to PDF
            string htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF generated from HTML.</p>";
            ChromePdfRenderer renderer = new ChromePdfRenderer();
        // Convert HTML string to PDF
            PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent);
            return File(pdf.BinaryData, "application/pdf", "generatedDocument.pdf");
        }
    }
}
using IronPdf;
using Microsoft.AspNetCore.Mvc;
namespace IronPdfTest.Controllers
{
    public class PdfController : Controller
    {
        public IActionResult GeneratePdf()
        {
        // String of HTML code to be converted to PDF
            string htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF generated from HTML.</p>";
            ChromePdfRenderer renderer = new ChromePdfRenderer();
        // Convert HTML string to PDF
            PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent);
            return File(pdf.BinaryData, "application/pdf", "generatedDocument.pdf");
        }
    }
}
Imports IronPdf
Imports Microsoft.AspNetCore.Mvc
Namespace IronPdfTest.Controllers
	Public Class PdfController
		Inherits Controller

		Public Function GeneratePdf() As IActionResult
		' String of HTML code to be converted to PDF
			Dim htmlContent As String = "<h1>Hello, IronPDF!</h1><p>This is a PDF generated from HTML.</p>"
			Dim renderer As New ChromePdfRenderer()
		' Convert HTML string to PDF
			Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(htmlContent)
			Return File(pdf.BinaryData, "application/pdf", "generatedDocument.pdf")
		End Function
	End Class
End Namespace
VB   C#

Cómo convertir HTML a PDF en ASP .NET utilizando C#: Figura 7

ASP.NET MVC utiliza controladores para gestionar las peticiones de los usuarios. Cuando un usuario navega a una URL específica, ASP.NET llamará a un método en el controlador asociado con esa ruta.

  • PdfController es una clase que hereda de Controller, lo que significa que puede gestionar solicitudes web y enviar respuestas.
  • El método GeneratePdf dentro de este controlador manejará una solicitud para convertir HTML en PDF y devolverá el resultado.

    Cuando un usuario visita una URL vinculada a la acción GeneratePdf, se ejecuta el método.

  • AcciónResultado: Este es el tipo de retorno, que representa la respuesta que la aplicación web enviará de vuelta al usuario. Puede tratarse de una vista(Página HTML), descarga de archivos, etc. En este caso, se trata de un archivo PDF.

    • GenerarPdf() Método:

      • Dentro del método, definimos una cadena htmlContent que contiene el HTML que queremos convertir a PDF. Por ejemplo, "

        Hola, IronPDF!

        Se trata de un PDF generado a partir de HTML.

        ".

      • Creamos una nueva instancia de**Renderizador de PDF cromadoel objetivo de la traducción es la conversión de HTML a PDF.
    • El métodoRenderHtmlAsPdf() toma la cadena HTML y devuelve un objeto PDF.

Configurar enrutamiento

En una aplicación ASP.NET MVC, se definen rutas que asignan URL a métodos de controlador(acciones). Por ejemplo, si navega a /Pdf/GeneratePdf en el navegador, ASP.NET buscará el PdfController y llamará a su método GeneratePdf. Asegúrese de que su configuración de enrutamiento permite el acceso a la acción GeneratePdf. Si utiliza ASP.NET Core MVC, normalmente se configura automáticamente. Si utiliza Web API, asegúrese de que sus rutas están correctamente configuradas.

PDF personalizado

Ahora que ya conocemos los conceptos básicos, vamos a crear un archivo PDF a partir de contenido HTML con algunos ajustes de personalización para el PDF de salida. IronPDF ofrece un potente conjunto de herramientas de personalización de PDF, tales comomárgenes, cabeceras/pies de página, pDF a mediday mucho más.

using IronPdf;
using Microsoft.AspNetCore.Mvc;
namespace IronPdfTest.Controllers
{
    // Controller for our PDF converter
    public class PdfController : Controller
    {
        public IActionResult GeneratePdf()
        {
            string url= "<h1>Hello, IronPDF!</h1><p>This is a PDF generated from HTML.</p>";
            ChromePdfRenderer renderer = new ChromePdfRenderer();
        // Creating the cover page
            PdfDocument cover = renderer.RenderHtmlAsPdf("<h1>Cover Page</h1>");
        // Adding custom options for our final PDF
            renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Landscape;
            renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A3;
            renderer.RenderingOptions.TextHeader.CenterText = "IronPDF";
            renderer.RenderingOptions.TextHeader.FontSize = 12;
            renderer.RenderingOptions.MarginTop = 20;
            renderer.RenderingOptions.FirstPageNumber = 2;
        // Creating our main PDF
            PdfDocument pdf = renderer.RenderHtmlAsPdf(url);
        // Appending the cover to the main PDF
            pdf.InsertPdf(cover, 0);
            return File(pdf.BinaryData, "application/pdf", "generatedDocument.pdf");
        }
    }
}
using IronPdf;
using Microsoft.AspNetCore.Mvc;
namespace IronPdfTest.Controllers
{
    // Controller for our PDF converter
    public class PdfController : Controller
    {
        public IActionResult GeneratePdf()
        {
            string url= "<h1>Hello, IronPDF!</h1><p>This is a PDF generated from HTML.</p>";
            ChromePdfRenderer renderer = new ChromePdfRenderer();
        // Creating the cover page
            PdfDocument cover = renderer.RenderHtmlAsPdf("<h1>Cover Page</h1>");
        // Adding custom options for our final PDF
            renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Landscape;
            renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A3;
            renderer.RenderingOptions.TextHeader.CenterText = "IronPDF";
            renderer.RenderingOptions.TextHeader.FontSize = 12;
            renderer.RenderingOptions.MarginTop = 20;
            renderer.RenderingOptions.FirstPageNumber = 2;
        // Creating our main PDF
            PdfDocument pdf = renderer.RenderHtmlAsPdf(url);
        // Appending the cover to the main PDF
            pdf.InsertPdf(cover, 0);
            return File(pdf.BinaryData, "application/pdf", "generatedDocument.pdf");
        }
    }
}
Imports IronPdf
Imports Microsoft.AspNetCore.Mvc
Namespace IronPdfTest.Controllers
	' Controller for our PDF converter
	Public Class PdfController
		Inherits Controller

		Public Function GeneratePdf() As IActionResult
			Dim url As String= "<h1>Hello, IronPDF!</h1><p>This is a PDF generated from HTML.</p>"
			Dim renderer As New ChromePdfRenderer()
		' Creating the cover page
			Dim cover As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Cover Page</h1>")
		' Adding custom options for our final PDF
			renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Landscape
			renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A3
			renderer.RenderingOptions.TextHeader.CenterText = "IronPDF"
			renderer.RenderingOptions.TextHeader.FontSize = 12
			renderer.RenderingOptions.MarginTop = 20
			renderer.RenderingOptions.FirstPageNumber = 2
		' Creating our main PDF
			Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(url)
		' Appending the cover to the main PDF
			pdf.InsertPdf(cover, 0)
			Return File(pdf.BinaryData, "application/pdf", "generatedDocument.pdf")
		End Function
	End Class
End Namespace
VB   C#

Cómo convertir HTML a PDF en ASP .NET utilizando C#: Figura 8

Conclusión

Hoy hemos examinado más de cerca cómo se puede utilizar la conversión de HTML a PDF con ASP.NET, y hemos explorado el proceso de creación de archivos PDF a partir de HTML dentro de un proyecto ASP.NET. Siguiendo los pasos descritos anteriormente, podrá integrar fácilmente la generación de PDF en sus aplicaciones web, lo que le permitirá crear documentos imprimibles de alta calidad a partir de contenido HTML.

IronPDF cuenta con un amplio conjunto de funciones que pueden aprovecharse para producir documentos PDF de alta calidad. Para obtener más información sobre funciones avanzadas y personalización detallada, consulte el documento IronPDFdocumentacióny con su rápidoinstalacióncon IronPDF, podrá instalar IronPDF en su proyecto en un abrir y cerrar de ojos.

< ANTERIOR
Cómo extraer datos de tabla de un archivo PDF en C#
SIGUIENTE >
Cumplimiento PDF/A (Cómo Funciona para Desarrolladores)

¿Listo para empezar? Versión: 2024.12 acaba de salir

Descarga gratuita de NuGet Descargas totales: 11,622,374 Ver licencias >