Saltar al pie de página
USANDO IRONPDF

Cómo convertir una página web a PDF en ASP .NET utilizando C# y IronPDF

La conversión de páginas web y páginas HTML a documentos PDF en aplicaciones ASP.NET es un requisito común para generar informes, facturas y contenido descargable. IronPDF es una biblioteca .NET que proporciona una solución sencilla pero potente para convertir páginas web a PDF en ASP.NET utilizando C#, convirtiendo HTML de entrada, páginas web y archivos HTML en archivos PDF profesionales con sólo unas pocas líneas de código.

Esto es esencial para cualquier proyecto .NET moderno. No dejes de seguirnos mientras estudiamos distintos métodos para convertir tus contenidos HTML y web en documentos PDF de alta calidad

Introducción a IronPDF

Para empezar a convertir páginas web a PDF en su aplicación ASP.NET, instale IronPDF a través de la consola del gestor de paquetes NuGet:

Install-Package IronPdf

Tras la instalación, añada la sentencia using a sus archivos de C#:

using IronPdf;
using IronPdf;
Imports IronPdf
$vbLabelText   $csharpLabel

IronPDF funciona a la perfección con aplicaciones ASP.NET Web Forms y ASP.NET Core, proporcionando una conversión coherente de HTML a PDF en todos los marcos .NET. Para la implementación, considere su uso con una función de Azure para el escalado sin servidor.

¿Cómo convertir una cadena HTML a PDF?

La clase ChromePdfRenderer es el principal conversor de PDF de IronPDF para transformar contenido HTML en documentos PDF. Este método es perfecto para generar PDF a partir de cadenas HTML creadas dinámicamente:

using IronPdf;
using System.IO;

class Program
{
    static void Main(string[] args)
    {
        // Create the PDF converter
        var renderer = new ChromePdfRenderer();
        // Convert HTML string to PDF
        string htmlContent = "<h1>Sales Report</h1><p>Quarterly sales data...</p>";
        var pdfDocument = renderer.RenderHtmlAsPdf(htmlContent);
        // Save the PDF file
        pdfDocument.SaveAs("report.pdf");
    }
}
using IronPdf;
using System.IO;

class Program
{
    static void Main(string[] args)
    {
        // Create the PDF converter
        var renderer = new ChromePdfRenderer();
        // Convert HTML string to PDF
        string htmlContent = "<h1>Sales Report</h1><p>Quarterly sales data...</p>";
        var pdfDocument = renderer.RenderHtmlAsPdf(htmlContent);
        // Save the PDF file
        pdfDocument.SaveAs("report.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Resultado de HTML a PDF

Cómo convertir una página web a PDF en ASP.NET usando C# e IronPDF: Imagen 1 - Simple HTML to PDF output

El método RenderHtmlAsPdf conserva todos los estilos CSS, imágenes y elementos HTML del documento PDF. Cuando trabaje con código HTML que haga referencia a la carga de recursos externos (como CSS o imágenes), especifique una ruta base:

var renderer = new ChromePdfRenderer();
string html = @"
    <link rel='stylesheet' href='styles.css'>
    <h1>Company Report</h1>
    <div style='text-align: center'>Annual Summary</div>";
// Set base path for external resources
var pdf = renderer.RenderHtmlAsPdf(html, @"C:\Assets\");
pdf.SaveAs("annual-report.pdf");
var renderer = new ChromePdfRenderer();
string html = @"
    <link rel='stylesheet' href='styles.css'>
    <h1>Company Report</h1>
    <div style='text-align: center'>Annual Summary</div>";
// Set base path for external resources
var pdf = renderer.RenderHtmlAsPdf(html, @"C:\Assets\");
pdf.SaveAs("annual-report.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

¿Cómo convertir una página web actual a PDF en ASP.NET?

Para aplicaciones ASP.NET Web Forms, IronPDF ofrece una solución de una sola línea increíblemente sencilla para convertir páginas web directamente a PDF:

protected void Page_Load(object sender, EventArgs e)
{
    // Convert current ASPX page to PDF
    IronPdf.AspxToPdf.RenderThisPageAsPdf();
}
protected void Page_Load(object sender, EventArgs e)
{
    // Convert current ASPX page to PDF
    IronPdf.AspxToPdf.RenderThisPageAsPdf();
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Salida de ASPX a PDF

Cómo convertir una página web a PDF en ASP.NET usando C# e IronPDF: Imagen 2 - ASPX to PDF sample output

Esta única línea de código convierte toda la página web actual con toda su estructura HTML, estilos y contenido dinámico en un archivo PDF, que se puede ver en Adobe Reader u otros visores de PDF. Puede personalizar el comportamiento de la salida:

// Display PDF directly in browser
IronPdf.AspxToPdf.RenderThisPageAsPdf(
    IronPdf.AspxToPdf.FileBehavior.InBrowser,
    "invoice.pdf"
);
// Display PDF directly in browser
IronPdf.AspxToPdf.RenderThisPageAsPdf(
    IronPdf.AspxToPdf.FileBehavior.InBrowser,
    "invoice.pdf"
);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Para aplicaciones ASP.NET Core MVC, utilice el ChromePdfRenderer para convertir vistas HTML. Para este proyecto .NET, trabajarás normalmente con Visual Studio:

public IActionResult GeneratePdf()
{
    try
    {
        // 1. Initialize the PDF Renderer
        var renderer = new IronPdf.ChromePdfRenderer();
        // 2. Construct the URL that IronPDF will convert.
        // This URL calls the 'Report' action above.
        string url = $"{Request.Scheme}://{Request.Host}/Home/Report";
        // Optional: Customize Rendering Options (e.g., margins)
        renderer.RenderingOptions.MarginTop = 15;
        renderer.RenderingOptions.MarginBottom = 15;
        renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
        {
            CenterText = "{page} of {total-pages}",
            FontSize = 10
        };
        // 3. Render the URL as a PDF
        var pdf = renderer.RenderUrlAsPdf(url);
        // 4. Send the PDF file to the browser
        // The user will be prompted to download 'report.pdf'
        return File(pdf.BinaryData, "application/pdf", "report.pdf");
    }
    catch (Exception ex)
    {
        // Log the error and return a generic error page or message
        // Console.WriteLine(ex.Message);
        return Content($"Error generating PDF: {ex.Message}");
    }
}
public IActionResult GeneratePdf()
{
    try
    {
        // 1. Initialize the PDF Renderer
        var renderer = new IronPdf.ChromePdfRenderer();
        // 2. Construct the URL that IronPDF will convert.
        // This URL calls the 'Report' action above.
        string url = $"{Request.Scheme}://{Request.Host}/Home/Report";
        // Optional: Customize Rendering Options (e.g., margins)
        renderer.RenderingOptions.MarginTop = 15;
        renderer.RenderingOptions.MarginBottom = 15;
        renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
        {
            CenterText = "{page} of {total-pages}",
            FontSize = 10
        };
        // 3. Render the URL as a PDF
        var pdf = renderer.RenderUrlAsPdf(url);
        // 4. Send the PDF file to the browser
        // The user will be prompted to download 'report.pdf'
        return File(pdf.BinaryData, "application/pdf", "report.pdf");
    }
    catch (Exception ex)
    {
        // Log the error and return a generic error page or message
        // Console.WriteLine(ex.Message);
        return Content($"Error generating PDF: {ex.Message}");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Salida de ASP.NET MVC

Cómo convertir una página web a PDF en ASP.NET usando C# e IronPDF: Imagen 3 - ASP.NET MVC PDF output

¿Cómo convertir URL a PDF?

IronPDF puede convertir fácilmente HTML de cualquier URL en un documento PDF. Esta potente función funciona tanto con sitios web externos como con páginas de aplicaciones internas:

var renderer = new ChromePdfRenderer();
// Convert external webpage to PDF
var pdf = renderer.RenderUrlAsPdf("https://example.com");
pdf.SaveAs("website.pdf");
var renderer = new ChromePdfRenderer();
// Convert external webpage to PDF
var pdf = renderer.RenderUrlAsPdf("https://example.com");
pdf.SaveAs("website.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Resultado

Cómo convertir una página web a PDF en ASP.NET usando C# e IronPDF: Imagen 4 - URL to PDF output

Para las páginas con JavaScript o contenido dinámico, puede utilizar el modo headless o activar la ejecución de JavaScript:

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.WaitFor.RenderDelay(1000); // Wait for JS to load
var pdf = renderer.RenderUrlAsPdf("https://app.example.com/dashboard");
pdf.SaveAs("dashboard.pdf");
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.WaitFor.RenderDelay(1000); // Wait for JS to load
var pdf = renderer.RenderUrlAsPdf("https://app.example.com/dashboard");
pdf.SaveAs("dashboard.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

¿Cómo configurar los ajustes de generación de PDF?

IronPDF ofrece amplias opciones de personalización para que la conversión de PDF se adapte a sus requisitos específicos:

var renderer = new ChromePdfRenderer();
// Configure page layout
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Landscape;
// Set margins in millimeters
renderer.RenderingOptions.MarginTop = 25;
renderer.RenderingOptions.MarginBottom = 25;
renderer.RenderingOptions.MarginLeft = 15;
renderer.RenderingOptions.MarginRight = 15;
// Enable background colors and images
renderer.RenderingOptions.PrintHtmlBackgrounds = true;
// Generate PDF with custom settings
var pdf = renderer.RenderHtmlAsPdf("<h1>Custom Layout</h1>");
pdf.SaveAs("custom.pdf");
var renderer = new ChromePdfRenderer();
// Configure page layout
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Landscape;
// Set margins in millimeters
renderer.RenderingOptions.MarginTop = 25;
renderer.RenderingOptions.MarginBottom = 25;
renderer.RenderingOptions.MarginLeft = 15;
renderer.RenderingOptions.MarginRight = 15;
// Enable background colors and images
renderer.RenderingOptions.PrintHtmlBackgrounds = true;
// Generate PDF with custom settings
var pdf = renderer.RenderHtmlAsPdf("<h1>Custom Layout</h1>");
pdf.SaveAs("custom.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Resultado

Cómo convertir una página web a PDF en ASP.NET usando C# e IronPDF: Imagen 5 - Custom PDF

¿Cómo añadir encabezados y pies de página a archivos PDF?

Los documentos PDF profesionales suelen requerir encabezados y pies de página con números de página y otra información:

var renderer = new ChromePdfRenderer();
// Add text header and footer
renderer.RenderingOptions.TextHeader = new TextHeaderFooter()
{
    CenterText = "Monthly Report",
    DrawDividerLine = true,
    FontSize = 16
};
renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
{
    LeftText = "{date} {time}",
    RightText = "Page {page} of {total-pages}",
    FontSize = 10
};
var pdf = renderer.RenderHtmlAsPdf("<h1>Report Content</h1>");
pdf.SaveAs("report-with-header.pdf");
var renderer = new ChromePdfRenderer();
// Add text header and footer
renderer.RenderingOptions.TextHeader = new TextHeaderFooter()
{
    CenterText = "Monthly Report",
    DrawDividerLine = true,
    FontSize = 16
};
renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
{
    LeftText = "{date} {time}",
    RightText = "Page {page} of {total-pages}",
    FontSize = 10
};
var pdf = renderer.RenderHtmlAsPdf("<h1>Report Content</h1>");
pdf.SaveAs("report-with-header.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Resultado

Cómo convertir una página web a PDF en ASP.NET usando C# e IronPDF: Imagen 6 - PDF de salida con encabezados y pies de página

Para cabeceras más complejas, utilice el formato HTML:

renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align:center; border-bottom: 1px solid #ccc;'>" +
                   "<h2>Company Name</h2></div>",
    MaxHeight = 30
};
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align:center; border-bottom: 1px solid #ccc;'>" +
                   "<h2>Company Name</h2></div>",
    MaxHeight = 30
};
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Trabajar con diferentes fuentes HTML

IronPDF ofrece varios métodos para generar archivos PDF a partir de diversas fuentes HTML:

Conversión de archivos HTML

var renderer = new ChromePdfRenderer();
// Convert HTML file to PDF
var pdf = renderer.RenderHtmlFileAsPdf(@"C:\Templates\invoice.html");
var renderer = new ChromePdfRenderer();
// Convert HTML file to PDF
var pdf = renderer.RenderHtmlFileAsPdf(@"C:\Templates\invoice.html");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Conversión con imágenes Base64

string htmlWithImage = @"
    <h1>Product Catalog</h1>
    <img src='data:image/png;base64,iVBORw0KGgoAAAANS...' />";
var pdf = renderer.RenderHtmlAsPdf(htmlWithImage);
string htmlWithImage = @"
    <h1>Product Catalog</h1>
    <img src='data:image/png;base64,iVBORw0KGgoAAAANS...' />";
var pdf = renderer.RenderHtmlAsPdf(htmlWithImage);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Conclusión

IronPDF hace que la conversión de HTML a PDF en aplicaciones ASP.NET sea extraordinariamente sencilla. Si necesita generar documentos PDF a partir de cadenas HTML, convertir archivos HTML o transformar páginas web enteras en PDF, IronPDF proporciona un sólido conversor de HTML a PDF que conserva todo el contenido HTML, los estilos CSS y la funcionalidad JavaScript. Es adecuado tanto para aplicaciones a gran escala como para herramientas ligeras, como las que se utilizan en aplicaciones móviles o una simple utilidad de línea de comandos.

La biblioteca PDF gestiona desde documentos HTML sencillos hasta contenidos web complejos, lo que la convierte en la opción ideal para la conversión de PDF en sus aplicaciones .NET. Gracias a la compatibilidad con encabezados, pies de página, ajustes de seguridad y varias fuentes HTML, puede crear documentos PDF que cumplan los estándares profesionales con un código mínimo.

Empiece a utilizar IronPDF hoy mismo a través de una prueba gratuita y experimente una conversión de HTML a PDF sin problemas en sus proyectos ASP.NET. Para uso en producción, explore nuestras opciones de licencia flexibles que se adaptan a sus necesidades.

Preguntas Frecuentes

¿Cómo puedo convertir una página web a PDF en ASP.NET?

Puede utilizar IronPDF, una biblioteca .NET, para convertir páginas web a PDF en aplicaciones ASP.NET. Le permite generar archivos PDF profesionales a partir de contenido HTML con sólo unas pocas líneas de código C#.

¿Cuáles son los casos de uso típicos para convertir HTML a PDF en ASP.NET?

Los casos de uso comunes incluyen la generación de informes, la creación de facturas y la provisión de contenido descargable en formato PDF desde páginas web dentro de aplicaciones ASP.NET.

¿Es IronPDF adecuado para generar PDF de calidad profesional?

Sí, IronPDF está diseñado para convertir HTML y páginas web en documentos PDF profesionales de alta calidad, por lo que es adecuado para aplicaciones empresariales y de negocios.

¿Es fácil utilizar IronPDF en una aplicación ASP.NET?

IronPDF es muy fácil de usar. Permite a los desarrolladores convertir HTML a PDF con un código mínimo, lo que facilita su integración en las aplicaciones ASP.NET existentes.

¿Puede IronPDF manejar páginas web complejas con CSS y JavaScript?

Sí, IronPDF puede procesar páginas web complejas que incluyan CSS y JavaScript, garantizando que el PDF resultante mantenga el aspecto de la página web original.

¿Es posible automatizar la generación de PDF a partir de páginas web con IronPDF?

Por supuesto. IronPDF puede integrarse en flujos de trabajo automatizados para generar PDF a partir de páginas web mediante programación en aplicaciones ASP.NET.

¿Soporta IronPDF la conversión de archivos HTML directamente a PDF?

Sí, IronPDF permite convertir no sólo páginas web, sino también archivos HTML locales directamente en documentos PDF.

¿Qué lenguaje de programación se utiliza con IronPDF para la conversión de PDF?

IronPDF utiliza C# para convertir HTML y páginas web a PDF en aplicaciones ASP.NET.

¿Puede IronPDF generar archivos PDF a partir de contenido web dinámico?

Sí, IronPDF puede manejar contenido web dinámico, garantizando que los PDF generados reflejen la última versión de la página web en el momento de la conversión.

¿Cuáles son los beneficios de usar IronPDF para la conversión de HTML a PDF?

IronPDF ofrece una forma sólida y sencilla de convertir HTML a PDF, con ventajas como facilidad de uso, resultados de alta calidad, compatibilidad con diseños complejos y funciones de automatización.

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