NOTICIAS DEL SECTOR

Milan Jovanović crea documentos PDF en ASP .NET Core - Y IronPDF es su biblioteca de elección

Milan Jovanovic

Milan, arquitecto de software, MVP de Microsoft y una de las voces más respetadas del ecosistema .NET, publicó un análisis en profundidad sobre la generación de PDF en .NET Core. Repasó múltiples patrones del mundo real, incluyendo la creación dinámica de documentos, la fusión de archivos PDF y el servicio de archivos desde puntos finales de API.

¿Cuál es su biblioteca preferida para todo esto? IronPDF. En sus propias palabras: "IronPDF es la biblioteca que más he utilizado en proyectos comerciales".

Veamos exactamente cómo lo utiliza.

El enfoque: plantillas HTML con vistas Razor

El método más habitual para generar archivos PDF es utilizar una plantilla HTML.

Es la combinación de las vistas Razor de ASP.NET Core MVC con el motor de renderizado de IronPDF. Al utilizar vistas fuertemente tipadas, puede pasar objetos C# directamente a la plantilla en tiempo de ejecución para generar documentos dinámicos basados en datos.

Aquí tienes un ejemplo práctico. En primer lugar, una vista Razor define el diseño del documento:


@model ViewModels.InoviceViewModel

<div>Invoice number: @Model.InvoiceNumber</div>
<div>Invoice date: @Model.InvoiceDate</div>
<br/>
<span>Line items:</span>
<ul>
    @foreach(var lineItem in Model.LineItems)
    {
        <li>@lineItem.Name | @lineItem.Price</li>
    }
</ul>

@model ViewModels.InoviceViewModel

<div>Invoice number: @Model.InvoiceNumber</div>
<div>Invoice date: @Model.InvoiceDate</div>
<br/>
<span>Line items:</span>
<ul>
    @foreach(var lineItem in Model.LineItems)
    {
        <li>@lineItem.Name | @lineItem.Price</li>
    }
</ul>
@ModelType ViewModels.InoviceViewModel

<div>Invoice number: @Model.InvoiceNumber</div>
<div>Invoice date: @Model.InvoiceDate</div>
<br/>
<span>Line items:</span>
<ul>
    @For Each lineItem In Model.LineItems
        <li>@lineItem.Name | @lineItem.Price</li>
    Next
</ul>
$vbLabelText   $csharpLabel

A continuación, ChromePdfRenderer de IronPDF convierte ese HTML generado en un PDF pulido:

var html = ConvertRazorViewToHtml(invoice);

var renderer = new ChromePdfRenderer();

var pdf = renderer.RenderHtmlAsPdf(html);

pdf.SaveAs($"invoice-{invoice.InvoiceNumber}.pdf");
var html = ConvertRazorViewToHtml(invoice);

var renderer = new ChromePdfRenderer();

var pdf = renderer.RenderHtmlAsPdf(html);

pdf.SaveAs($"invoice-{invoice.InvoiceNumber}.pdf");
Dim html = ConvertRazorViewToHtml(invoice)

Dim renderer = New ChromePdfRenderer()

Dim pdf = renderer.RenderHtmlAsPdf(html)

pdf.SaveAs($"invoice-{invoice.InvoiceNumber}.pdf")
$vbLabelText   $csharpLabel

Tres líneas de código C#. La vista Razor se encarga de toda la lógica de diseño, CSS se encarga del estilo e IronPDF se encarga de la conversión. Como señala Milan: "Es así de sencillo".

Por qué Milán elige esto en lugar de otras alternativas

Milan ha trabajado con bibliotecas de PDF en múltiples proyectos comerciales, y su preferencia por IronPDF se debe a unos cuantos factores clave que destaca en su artículo.

El motor de renderizado Chromium ofrece resultados consistentes. IronPDF renderiza HTML utilizando el mismo motor que utiliza Chrome, lo que significa que el PDF resultante coincide exactamente con lo que verías en un navegador.

CSS te ofrece un control total sobre el formato. En lugar de aprender una API de diseño propietaria, utilizas el mismo CSS que escribirías para cualquier página web. Flexbox, cuadrícula, fuentes personalizadas, espaciado adaptativo: todo ello se traduce directamente al PDF resultante.

Ejemplo práctico: Combinar varios archivos PDF

Milan repasa un requisito empresarial habitual: combinar varios archivos PDF en un único documento. Piensa en recibos mensuales que deben agruparse para la contabilidad, o en secciones de informes que deben reunirse en un documento final.

Ejemplo práctico: Servir archivos PDF desde una API

Milan también muestra cómo IronPDF encaja de forma natural en el patrón de API mínima de ASP.NET Core. Devolución de un PDF generado dinámicamente desde un punto final.

Leer el artículo completo de Milan

El desglose completo de Milan incluye detalles de implementación adicionales y ejemplos de código que vale la pena explorar si estás evaluando métodos de generación de PDF para tus proyectos .NET.

Lea el artículo completo aquí

Prúebalo tú mismo

IronPDF es gratuito para uso en desarrollo, por lo que puedes probar los patrones de Milan en tus propios proyectos sin ningún compromiso. Instalación a través de NuGet:

Comienza tu prueba gratuita de 30 días