Saltar al pie de página
USANDO IRONPDF

Cómo crear un visor de PDF de ASP.NET Core

Crear un visor de PDF de ASP.NET Core no debería requerir bibliotecas complejas de JavaScript o complementos de navegador de terceros. Las aplicaciones web modernas necesitan una manera confiable de mostrar archivos PDF directamente en el navegador, ya sea para facturas, informes o documentos PDF interactivos. IronPDF simplifica este proceso aprovechando las capacidades del visor de PDF integrado de tu navegador mientras genera archivos PDF perfectos en el servidor.

En este artículo, te guiaremos a través de cómo generar y ver documentos PDF dentro de tus proyectos de ASP.NET Core, mostrando cómo crear aplicaciones de visor de PDF que puedan mostrar cualquier PDF.

¿Qué es un visor de PDF ASP.NET Core?

Un visor de PDF de ASP.NET Core permite a los usuarios ver documentos PDF directamente dentro de aplicaciones web sin descargar archivos a su dispositivo. En lugar de lidiar con componentes de visualización de documentos basados en JavaScript, IronPDF adopta un enfoque sorprendentemente simple: genera archivos PDF de alta calidad en el servidor usando el motor de renderizado de Chrome, y luego los sirve con los encabezados correctos para que los navegadores muestren automáticamente los archivos PDF en línea.

Este enfoque del lado del servidor significa que tu visor de PDF de ASP.NET Core funciona de manera consistente en todos los navegadores sin complementos adicionales como Adobe Acrobat Reader. Dado que IronPDF utiliza el mismo motor de Chrome que impulsa millones de navegadores, tus documentos PDF se renderizan exactamente como se planeó, preservando estilos CSS, interacciones de JavaScript y diseños complejos. La integración de PDF de ASP.NET Core maneja todo, desde la conversión de HTML a PDF hasta la entrega segura de documentos con soporte a largo plazo.

¿Cómo instalar IronPDF en su aplicación web?

Instalar IronPDF en tu aplicación web .NET Core requiere solo un comando del Administrador de Paquetes de NuGet. Abre tu Consola del Administrador de Paquetes en Visual Studio y ejecuta:

Install-Package IronPdf

Después de la instalación, configura IronPDF en tu archivo Program.cs para configurar tu clave de licencia:

IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"; // Start with a free trial key
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"; // Start with a free trial key
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Esta configuración simple te da acceso a todas las funcionalidades del visor de PDF de .NET Core de IronPDF. La biblioteca maneja automáticamente la implementación del motor de Chrome y proporciona una API limpia para generar y mostrar archivos PDF en tus aplicaciones ASP.NET Core.

¿Cómo crear un visor básico de documentos PDF?

Crear tu primer visor de PDF de ASP.NET Core requiere un código mínimo. Aquí tienes un controlador que convierte contenido HTML en un documento PDF visible:

using IronPdf;
using Microsoft.AspNetCore.Mvc;

public class PdfController : Controller
{
    public IActionResult ViewDocument()
    {
        var renderer = new ChromePdfRenderer();

        // Create PDF from HTML string
        var html = @"
            <html>
                <body style='font-family: Arial; padding: 20px;'>
                    <h1>Invoice #2024-001</h1>
                    <p>This PDF document is displayed directly in your browser.</p>
                    <table style='width: 100%; border-collapse: collapse;'>
                        <tr>
                            <td style='border: 1px solid #ddd; padding: 8px;'>Item</td>
                            <td style='border: 1px solid #ddd; padding: 8px;'>Price</td>
                        </tr>
                        <tr>
                            <td style='border: 1px solid #ddd; padding: 8px;'>Service</td>
                            <td style='border: 1px solid #ddd; padding: 8px;'>$99.00</td>
                        </tr>
                    </table>
                </body>
            </html>";
        var pdf = renderer.RenderHtmlAsPdf(html);

        // Return PDF for inline viewing
        Response.Headers.Add("Content-Disposition", "inline; filename=invoice.pdf");
        return File(pdf.BinaryData, "application/pdf");
    }
}
using IronPdf;
using Microsoft.AspNetCore.Mvc;

public class PdfController : Controller
{
    public IActionResult ViewDocument()
    {
        var renderer = new ChromePdfRenderer();

        // Create PDF from HTML string
        var html = @"
            <html>
                <body style='font-family: Arial; padding: 20px;'>
                    <h1>Invoice #2024-001</h1>
                    <p>This PDF document is displayed directly in your browser.</p>
                    <table style='width: 100%; border-collapse: collapse;'>
                        <tr>
                            <td style='border: 1px solid #ddd; padding: 8px;'>Item</td>
                            <td style='border: 1px solid #ddd; padding: 8px;'>Price</td>
                        </tr>
                        <tr>
                            <td style='border: 1px solid #ddd; padding: 8px;'>Service</td>
                            <td style='border: 1px solid #ddd; padding: 8px;'>$99.00</td>
                        </tr>
                    </table>
                </body>
            </html>";
        var pdf = renderer.RenderHtmlAsPdf(html);

        // Return PDF for inline viewing
        Response.Headers.Add("Content-Disposition", "inline; filename=invoice.pdf");
        return File(pdf.BinaryData, "application/pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

La clase ChromePdfRenderer maneja el procesamiento de la conversión, transformando tu HTML en un documento PDF. Establecer el encabezado Content-Disposition en "inline" indica al navegador que muestre el PDF en lugar de descargarlo, creando una experiencia de visor de PDF fluida donde los usuarios pueden ver archivos PDF directamente en su aplicación web.

Documento PDF de salida en el visor del navegador

Cómo crear un visor de PDF de ASP.NET Core: Figura 1 - PDF en nuestro visor de PDF de navegador

¿Cómo mostrar archivos PDF de distintas fuentes?

Tu visor de PDF de ASP.NET Core puede generar archivos PDF desde múltiples fuentes de paquetes. Aquí tienes cómo convertir una URL en un PDF visible:

public IActionResult ViewFromUrl(string websiteUrl)
{
    var renderer = new ChromePdfRenderer();

    // Configure rendering options
    renderer.RenderingOptions.EnableJavaScript = true;
    renderer.RenderingOptions.WaitFor.RenderDelay = 2000; // Wait for content to load
    var pdf = renderer.RenderUrlAsPdf(websiteUrl);
    Response.Headers.Add("Content-Disposition", "inline");
    return File(pdf.BinaryData, "application/pdf");
}
public IActionResult ViewFromUrl(string websiteUrl)
{
    var renderer = new ChromePdfRenderer();

    // Configure rendering options
    renderer.RenderingOptions.EnableJavaScript = true;
    renderer.RenderingOptions.WaitFor.RenderDelay = 2000; // Wait for content to load
    var pdf = renderer.RenderUrlAsPdf(websiteUrl);
    Response.Headers.Add("Content-Disposition", "inline");
    return File(pdf.BinaryData, "application/pdf");
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Resultado

Cómo crear un visor de PDF de ASP.NET Core: Figura 2 - PDF renderizado desde URL y mostrado en nuestro programa de visor de PDF

Para los archivos PDF existentes almacenados en el servidor, puedes cargarlos y mostrarlos fácilmente. Este código de muestra muestra cómo trabajar con archivos en tu carpeta wwwroot:

public IActionResult ViewExistingPdf(string fileName)
{
    // Load PDF from wwwroot folder
    var pdfPath = Path.Combine(_webHostEnvironment.WebRootPath, "documents", fileName);
    var pdf = PdfDocument.FromFile(pdfPath);   
    // Optional: Add modifications like watermarks
    pdf.ApplyWatermark("<h2 style='color: red; opacity: 0.5;'>CONFIDENTIAL</h2>");
    return File(pdf.BinaryData, "application/pdf");
}
public IActionResult ViewExistingPdf(string fileName)
{
    // Load PDF from wwwroot folder
    var pdfPath = Path.Combine(_webHostEnvironment.WebRootPath, "documents", fileName);
    var pdf = PdfDocument.FromFile(pdfPath);   
    // Optional: Add modifications like watermarks
    pdf.ApplyWatermark("<h2 style='color: red; opacity: 0.5;'>CONFIDENTIAL</h2>");
    return File(pdf.BinaryData, "application/pdf");
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Cómo crear un visor de PDF de ASP.NET Core: Figura 3 - Viendo un PDF existente (Con nuestra marca de agua añadida)

Esta flexibilidad significa que tu visor de PDF puede manejar tanto contenido generado dinámicamente como documentos PDF existentes almacenados en tu carpeta wwwroot o base de datos. El componente se integra perfectamente con tu arquitectura de ASP.NET Core.

¿Cómo se pueden añadir funciones avanzadas al visor de PDF?

IronPDF transforma tu visor de PDF básico en un visor de documentos poderoso con capacidades avanzadas. Agregar formularios a tus archivos PDF permite una funcionalidad interactiva que los usuarios pueden completar directamente:

public IActionResult CreateFormPdf()
{
    var html = @"
        <html>
            <body>
                <h2>Application Form</h2>
                <form>
                    Name: 
                    <br><br>
                    Email: 
                    <br><br>
                    <input type='checkbox'> I agree to terms
                </form>
            </body>
        </html>";
    var renderer = new ChromePdfRenderer();
    renderer.RenderingOptions.CreatePdfFormsFromHtml = true; // Enable form fields
    var pdf = renderer.RenderHtmlAsPdf(html);
    return File(pdf.BinaryData, "application/pdf");
}
public IActionResult CreateFormPdf()
{
    var html = @"
        <html>
            <body>
                <h2>Application Form</h2>
                <form>
                    Name: 
                    <br><br>
                    Email: 
                    <br><br>
                    <input type='checkbox'> I agree to terms
                </form>
            </body>
        </html>";
    var renderer = new ChromePdfRenderer();
    renderer.RenderingOptions.CreatePdfFormsFromHtml = true; // Enable form fields
    var pdf = renderer.RenderHtmlAsPdf(html);
    return File(pdf.BinaryData, "application/pdf");
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Salida con formulario rellenable

Cómo crear un visor de PDF de ASP.NET Core: Figura 4

Cuando los usuarios abren este PDF en su navegador, pueden completar los formularios directamente sin necesidad de herramientas externas. También puedes editar archivos PDF agregando encabezados, pies de página, números de página o firmas digitales. El enfoque de ayuda de etiquetas facilita la adición de estas características:

// Add headers and page numbers
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align: center;'>Company Report</div>",
    MaxHeight = 25
};
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align: center;'>Page {page} of {total-pages}</div>",
    MaxHeight = 25
};
// Add headers and page numbers
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align: center;'>Company Report</div>",
    MaxHeight = 25
};
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align: center;'>Page {page} of {total-pages}</div>",
    MaxHeight = 25
};
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Estas características transforman tu visor de PDF de ASP.NET en una solución integral para el manejo de documentos, apoyando todo, desde la simple visualización hasta operaciones de edición complejas, incluyendo la selección de texto y la funcionalidad de impresión. Incluso puedes trabajar con otros formatos como Excel, Word, archivos DOCX y PowerPoint a través de las capacidades de conversión de IronPDF.

Conclusión

Crear un visor de PDF de ASP.NET Core con IronPDF elimina la complejidad de las soluciones basadas en JavaScript mientras proporciona un manejo de documentos PDF de calidad profesional. Aprovechando las capacidades nativas del navegador y el motor de renderizado de Chrome, puedes crear, mostrar y gestionar archivos PDF con solo unas pocas líneas de código: sin configuraciones por defecto ni configuraciones complejas requeridas.

La combinación de generación del lado del servidor y visualización basada en el navegador proporciona el equilibrio perfecto de soporte, rendimiento y experiencia del usuario para tus aplicaciones web. Ya sea que necesites mostrar archivos PDF, manejar formularios, editar documentos existentes o imprimir PDFs, la sencilla API de IronPDF facilita la implementación. La biblioteca se actualiza con frecuencia para garantizar la compatibilidad con los últimos marcos .NET y entornos de Windows.

¿Listo para construir tu propio visor de PDF en tu proyecto ASP.NET Core? Comienza con una prueba gratuita para encontrar el plan adecuado. ¿Necesitas ayuda para comenzar? Consulta este tutorial detallado o explora la documentación completa para más ejemplos.

Preguntas Frecuentes

¿Cuál es el propósito de un visor de PDF ASP.NET Core?

Un visor de PDF ASP.NET Core le permite mostrar archivos PDF directamente en el navegador, facilitando a los usuarios ver documentos como facturas, informes o PDFs interactivos sin necesidad de complementos externos.

¿Cómo simplifica IronPDF la creación de un visor de PDF en ASP.NET Core?

IronPDF simplifica el proceso aprovechando las capacidades de visor de PDF integradas del navegador y generando PDFs perfectamente detallados en el lado del servidor, eliminando la necesidad de bibliotecas de JavaScript complejas o complementos de terceros.

¿Puede IronPDF manejar documentos PDF interactivos?

Sí, IronPDF puede gestionar documentos PDF interactivos, permitiendo a los usuarios rellenar formularios e interactuar con contenido PDF directamente en el navegador.

¿Cuáles son los beneficios de usar IronPDF para mostrar PDFs en aplicaciones web?

IronPDF proporciona una manera confiable y eficiente de mostrar PDFs en aplicaciones web, ofreciendo características como generación de PDF en el lado del servidor e integración perfecta con aplicaciones ASP.NET Core.

¿Es necesario usar complementos de navegador de terceros con IronPDF?

No, IronPDF utiliza las capacidades de visor de PDF integradas del navegador, por lo que no hay necesidad de complementos de navegador de terceros para mostrar archivos PDF.

¿Qué tipos de documentos PDF pueden mostrarse con un visor de PDF ASP.NET Core?

Un visor de PDF ASP.NET Core puede mostrar varios tipos de documentos PDF, incluidos facturas, informes y formularios interactivos, directamente en el navegador.

¿IronPDF soporta la generación de PDF en el lado del servidor?

Sí, IronPDF soporta la generación de PDF en el lado del servidor, asegurando que los documentos se rendericen de manera precisa y eficiente antes de ser mostrados en el navegador.

¿Cómo asegura IronPDF un renderizado de PDF perfecto?

IronPDF asegura una renderización de PDF perfectamente detallada utilizando algoritmos avanzados y técnicas para reproducir fielmente la apariencia de documentos generados en el lado del servidor.

¿Qué lenguaje de programación se utiliza para construir un visor de PDF ASP.NET Core con IronPDF?

El visor de PDF ASP.NET Core se construye utilizando C# y el marco ASP.NET Core, aprovechando IronPDF para manejar el procesamiento y la visualización de PDF.

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