Cómo Generar PDF desde Plantilla en C#
Los documentos PDF son prevalentes en la cultura actual, utilizados por diversas empresas para crear facturas y otros documentos. Al seleccionar una biblioteca .NET para proyectos, debe considerarse la facilidad para crear, leer y escribir archivos PDF.
Cómo generar PDF a partir de una plantilla en C#
- Instalar biblioteca C# para generar PDF a partir de plantilla
- Construir cadena HTML con la clase StringBuilder
- Rellenar la plantilla HTML con datos almacenados en Listas
- Usar el método RenderHtmlAsPdf para generar PDF desde la plantilla
- Guardar el PDF generado como un nuevo documento
Características de IronPDF
IronPDF es uno de los mejores convertidores de HTML a PDF disponibles en el mercado. IronPDF puede manejar casi cualquier operación que un navegador sea capaz de manejar. Puede crear archivos PDF desde HTML5, JavaScript, CSS e imágenes. La biblioteca de PDF para .NET hace simple producir/generar archivos PDF, leer PDF existentes y editar archivos PDF. Las modificaciones posibles incluyen cambiar tamaños de fuente, paginación, contenido de texto, etc. Los usuarios de IronPDF pueden crear campos de formulario en documentos PDF renderizados.
IronPDF es compatible con todos los tipos de proyectos de .NET Framework, incluyendo ASP.NET, Windows Forms y otros tipos de aplicaciones tradicionales de Windows. IronPDF es capaz de renderizar ASPX, Razor y otros componentes de vista MVC directamente en PDFs.
El conjunto completo de características de IronPDF incluye:
- Convertir imágenes a PDFs (y páginas PDF en imágenes)
- Unir y dividir PDFs
- Completar formularios PDF de forma programática
- Extraer texto e imágenes de PDFs
- IronPDF puede convertir archivos de imagen así como archivos HTML a PDF
- Crear PDFs desde páginas web, marcado HTML y documentos HTML offline
- Generar PDFs desde páginas web bloqueadas detrás de formularios de inicio de sesión HTML.
- Anotar PDFs.
- Agregar encabezados, pies de página, texto, imágenes, marcadores, marcas de agua y más
Crear un nuevo proyecto en Visual Studio
Este artículo demostrará las habilidades de generación de documentos de IronPDF con una sencilla Aplicación de Consola.
Abra el software Visual Studio y vaya al menú Archivo. Seleccione "Nuevo proyecto" y luego seleccione "Aplicación de Consola".
Nuevo Proyecto
Especificar el nombre del proyecto y su ubicación. Hacer clic en el botón Siguiente y elegir un .NET Framework.
Selección de .NET Framework
Finalmente, hacer clic en Crear para generar el nuevo proyecto de Visual Studio.
.NET Program.cs
3. Instalar la biblioteca IronPDF
La biblioteca IronPDF puede ser descargada e instalada de cuatro maneras.
Estas cuatro maneras son:
- Usar Visual Studio.
- Usar la Línea de Comandos de Visual Studio.
- Descargar directamente desde el sitio web de NuGet.
- Descargar directamente desde el sitio web de IronPDF.
3.1 Uso de Visual Studio
El Administrador de Paquetes NuGet está disponible en el software Visual Studio para la fácil instalación de paquetes desde NuGet. La captura de pantalla a continuación muestra cómo abrir el Administrador de Paquetes NuGet.
Administrador de Paquetes NuGet
Buscar "IronPDF" en la pestaña Explorar de la interfaz del Administrador de Paquetes.
Instalación de IronPDF
Elegir el paquete IronPdf (primera opción) y hacer clic en el botón Instalar para añadirlo a la Solución.
3.2 Uso de la línea de comandos de Visual Studio
En Visual Studio, ve a Herramientas > Administrador de Paquetes NuGet > Consola del Administrador de Paquetes
Introduzca el siguiente comando en la pestaña de la Consola del Administrador de Paquetes y presione ENTER.
Install-Package IronPdf
Instalar IronPDF
3.3 Descarga directa desde el sitio web de NuGet
- Navegue a la página del paquete NuGet de IronPDF.
- Haga clic en Descargar paquete desde el menú en el lado derecho.
- Haga doble clic en el paquete descargado desde el Explorador de Windows para instalarlo automáticamente en su proyecto.
3.4 Descarga directa desde el sitio web de IronPDF
Descargue el archivo ZIP de IronPDF directamente con la última versión del paquete IronPDF.
Una vez descargado, siga los pasos a continuación para agregar el paquete al proyecto.
- Hacer clic derecho en el proyecto desde la ventana del Explorador de Soluciones.
- Luego, seleccione la opción Referencia y busque la ubicación de la referencia descargada.
- Haz clic en Aceptar para agregar la referencia.
4. Crear un documento PDF a partir de una plantilla
El ejemplo de código a continuación muestra cómo crear archivos PDF desde la plantilla HTML dada con solo unas pocas líneas de código.
using System;
using System.Collections.Generic;
using System.Text;
using IronPdf;
class Program
{
static void Main()
{
// Create an instance of ChromePdfRenderer
var renderer = new IronPdf.ChromePdfRenderer();
// Render the HTML as PDF and save it as Test.pdf
renderer.RenderHtmlAsPdf(BuildTemplate()).SaveAs("Test.pdf");
}
/// <summary>
/// Builds an HTML template string using StringBuilder
/// </summary>
/// <returns>HTML string representation of a table</returns>
static string BuildTemplate()
{
var builder = new StringBuilder();
builder.Append("<table border='1'>");
builder.Append("<tr>");
builder.Append("<th>");
builder.Append("Cat Family");
builder.Append("</th>");
builder.Append("</tr>");
// Iterate over the data and populate the table rows
foreach (var item in GetData())
{
builder.Append("<tr>");
builder.Append("<td>");
builder.Append(item.ToString());
builder.Append("</td>");
builder.Append("</tr>");
}
builder.Append("</table>");
return builder.ToString();
}
/// <summary>
/// Provides a list of data representing different members of the cat family
/// </summary>
/// <returns>List of strings</returns>
static List<string> GetData()
{
List<string> data = new List<string>
{
"Lion",
"Tiger",
"Cat",
"Cheetah",
"Lynx"
};
return data;
}
}using System;
using System.Collections.Generic;
using System.Text;
using IronPdf;
class Program
{
static void Main()
{
// Create an instance of ChromePdfRenderer
var renderer = new IronPdf.ChromePdfRenderer();
// Render the HTML as PDF and save it as Test.pdf
renderer.RenderHtmlAsPdf(BuildTemplate()).SaveAs("Test.pdf");
}
/// <summary>
/// Builds an HTML template string using StringBuilder
/// </summary>
/// <returns>HTML string representation of a table</returns>
static string BuildTemplate()
{
var builder = new StringBuilder();
builder.Append("<table border='1'>");
builder.Append("<tr>");
builder.Append("<th>");
builder.Append("Cat Family");
builder.Append("</th>");
builder.Append("</tr>");
// Iterate over the data and populate the table rows
foreach (var item in GetData())
{
builder.Append("<tr>");
builder.Append("<td>");
builder.Append(item.ToString());
builder.Append("</td>");
builder.Append("</tr>");
}
builder.Append("</table>");
return builder.ToString();
}
/// <summary>
/// Provides a list of data representing different members of the cat family
/// </summary>
/// <returns>List of strings</returns>
static List<string> GetData()
{
List<string> data = new List<string>
{
"Lion",
"Tiger",
"Cat",
"Cheetah",
"Lynx"
};
return data;
}
}Imports System
Imports System.Collections.Generic
Imports System.Text
Imports IronPdf
Friend Class Program
Shared Sub Main()
' Create an instance of ChromePdfRenderer
Dim renderer = New IronPdf.ChromePdfRenderer()
' Render the HTML as PDF and save it as Test.pdf
renderer.RenderHtmlAsPdf(BuildTemplate()).SaveAs("Test.pdf")
End Sub
''' <summary>
''' Builds an HTML template string using StringBuilder
''' </summary>
''' <returns>HTML string representation of a table</returns>
Private Shared Function BuildTemplate() As String
Dim builder = New StringBuilder()
builder.Append("<table border='1'>")
builder.Append("<tr>")
builder.Append("<th>")
builder.Append("Cat Family")
builder.Append("</th>")
builder.Append("</tr>")
' Iterate over the data and populate the table rows
For Each item In GetData()
builder.Append("<tr>")
builder.Append("<td>")
builder.Append(item.ToString())
builder.Append("</td>")
builder.Append("</tr>")
Next item
builder.Append("</table>")
Return builder.ToString()
End Function
''' <summary>
''' Provides a list of data representing different members of the cat family
''' </summary>
''' <returns>List of strings</returns>
Private Shared Function GetData() As List(Of String)
Dim data As New List(Of String) From {"Lion", "Tiger", "Cat", "Cheetah", "Lynx"}
Return data
End Function
End ClassEn el código anterior:
- Primero, creamos una instancia de la clase IronPDF
ChromePdfRendererpara acceder a las características de creación de PDF. - A continuación, llamamos a
RenderHtmlAsPdfpasando la cadena HTML construida por el métodoBuildTemplate. Este método convierte el HTML en un PDF. - El método
BuildTemplateusa unStringBuilderpara construir una tabla HTML poblada con datos. GetDatadevuelve una lista de cadenas que representa la 'familia de gatos', que llena las filas de la tabla HTML.
A continuación se muestra el archivo PDF de muestra, generado con el código anterior con solo unas pocas líneas utilizando la plantilla dada.
Archivo PDF Generado
Cualquier tipo de etiqueta HTML se puede usar para crear una plantilla que pueda ayudar al usuario a generar formularios de usuario, recibos, etc., con una plantilla de muestra pero diferentes datos.
Es posible utilizar el método RenderUrlAsPdf o RenderHtmlFileAsPdf para generar archivos PDF desde diferentes fuentes. El primer método acepta una URL a una página web, mientras que el segundo acepta una cadena que contiene la ubicación de un archivo HTML en el ordenador.
Lea este tutorial para generar PDFs desde HTML para más información.
Conclusión
Usa IronPDF en producción sin marca de agua con una clave de prueba gratuita. IronPDF viene con licencias de Redistribución SaaS y OEM por un costo adicional. Para saber más, consulte la página de Licencias de IronPDF.
Preguntas Frecuentes
¿Cómo puedo generar un PDF desde una plantilla HTML usando C#?
Puedes usar IronPDF para generar un PDF desde una plantilla HTML en C#. Primero, crea una cadena HTML con marcadores de posición de datos usando la clase StringBuilder. Luego, rellena la plantilla con tus datos y usa el método RenderHtmlAsPdf de IronPDF para convertir el HTML en un documento PDF.
¿Qué métodos proporciona IronPDF para convertir HTML a PDF?
IronPDF ofrece varios métodos para convertir HTML a PDF, incluidos RenderHtmlAsPdf para cadenas HTML, RenderHtmlFileAsPdf para archivos HTML locales y RenderUrlAsPdf para páginas web por URL. Estos métodos permiten una creación flexible de PDFs desde diferentes fuentes HTML.
¿Cómo instalo IronPDF en mi proyecto C#?
Para instalar IronPDF en un proyecto C#, puedes usar el Administrador de Paquetes NuGet en Visual Studio. Busca 'IronPDF' y haz clic en instalar, o usa la Consola del Administrador de Paquetes con el comando Install-Package IronPdf.
¿Puede IronPDF manejar HTML5 y JavaScript complejos al convertir a PDF?
Sí, IronPDF puede manejar HTML5 y JavaScript complejos, asegurando que la conversión de páginas web complejas a documentos PDF mantenga el formato y funcionalidad previstos.
¿Cuáles son algunos usos comunes para generar PDFs desde plantillas en C#?
Usos comunes para generar PDFs desde plantillas en C# incluyen la creación de facturas, informes y formularios. IronPDF te permite automatizar estos procesos convirtiendo plantillas HTML dinámicas llenas de datos en documentos PDF de aspecto profesional.
¿Es IronPDF compatible con ASP.NET y Windows Forms?
Sí, IronPDF es compatible con varios tipos de proyectos del .NET Framework, incluidos ASP.NET y Windows Forms, lo que lo hace versátil para diferentes entornos de desarrollo de aplicaciones.
¿Cómo puedo crear un nuevo proyecto de Visual Studio para usar IronPDF para generar PDFs?
Para crear un nuevo proyecto de Visual Studio para usar IronPDF, abre Visual Studio, selecciona 'Nuevo Proyecto', elige 'Aplicación de Consola', especifica el nombre y la ubicación del proyecto, selecciona un .NET Framework, y haz clic en 'Crear'. Después de eso, instala IronPDF vía NuGet.
¿Puede IronPDF generar PDFs desde páginas web seguras con formularios de inicio de sesión?
Sí, IronPDF puede generar PDFs desde páginas web que requieren autenticación mediante formularios de inicio de sesión HTML, permitiéndote manejar contenido web seguro y protegido de manera efectiva.
¿IronPDF es totalmente compatible con .NET 10 y qué implica ese soporte?
Sí, IronPDF es totalmente compatible con .NET 10. Funciona de inmediato en proyectos .NET 10 sin necesidad de configuración adicional, es compatible con destinos de implementación modernos (Windows, Linux, contenedores) y aprovecha las nuevas mejoras de rendimiento de .NET 10, manteniendo la misma API y el mismo conjunto de características. (Fuente: Documentación de IronPDF sobre compatibilidad con .NET 10)






