USO DE IRONPDF

C# Crear PDF (Tutorial de ejemplo de código)

Actualizado 12 de enero, 2022
Compartir:

Este artículo le enseñará cómo producir documentos PDF desde una página web en el lenguaje de programación C# .NET utilizando IronPDF.

IronPDF es una biblioteca PDF con todas las funciones para .NET y Java. Es una de las varias bibliotecas de terceros disponibles que funcionan eficazmente en la creación, edición y procesamiento de documentos PDF, así como en la salida de archivos PDF editables a partir del contenido de otros tipos de archivos. (HTML, PNG, RTF, etc.). Obtenga más información sobre IronPDF y bibliotecas PDF similares en el creciente catálogo de artículos comparativos.


Como HTML es un lenguaje de marcado, puede resultar difícil convertir el contenido de HTML a un PDF sin las etiquetas HTML. IronPDF ofrece funciones como crear PDF en C# de HTML, por su facilidad de uso y características adicionales como el uso de JavaScript, CSS e imágenes.

Este artículo cubrirá en detalle la conversión de HTML a PDF en C#, proporcionada por IronPDF.


1. Crear un nuevo proyecto en Visual Studio

Abra el software Visual Studio y vaya al menú Archivo. Seleccione Nuevo Proyecto y luego seleccione Aplicación de Consola. Este artículo utilizará una aplicación de consola para generar documentos PDF.

C# Crear PDF (Tutorial de ejemplo de código), Figura 01: Crear un nuevo proyecto en Visual Studio

Crea un nuevo proyecto en Visual Studio.

Introduzca el nombre del proyecto y seleccione la ruta en el cuadro de texto correspondiente. A continuación, pulse el botón Siguiente.

C# Crear PDF (Tutorial de ejemplo de código), Figura 02: Configurar este proyecto

Configurar este proyecto

Seleccione el .NET Framework necesario y, a continuación, haga clic en el botón Crear, como se muestra a continuación:

C# Crear PDF (Tutorial de ejemplo de código), Figura 03: Selección de .NET Framework

Selección del marco .NET

El proyecto de Visual Studio generará ahora la estructura para la aplicación seleccionada, y si ha seleccionado la Consola, Windows y Aplicación Web, abrirá el archivo program.cs donde podrá introducir el código y construir/ejecutar la aplicación.

El siguiente paso es añadir la biblioteca y probar el programa.

Uso del gestor de paquetes NuGet de Visual Studio

El software Visual Studio proporciona la opción NuGet Package Manager para instalar el paquete directamente en la solución. La siguiente captura de pantalla muestra cómo abrir el Gestor de paquetes NuGet.

No se preocupe por la clave de licencia, IronPDF es gratuito para el desarrollo.

C# Crear PDF (Tutorial de ejemplo de código), Figura 04: Navegar al gestor de paquetes NuGet

Navegue hasta el Gestor de paquetes NuGet.

Proporciona el cuadro de búsqueda para mostrar la lista de bibliotecas de paquetes disponibles en el sitio web de NuGet. En el gestor de paquetes, busque la palabra clave "IronPDF", como se muestra en la siguiente captura de pantalla:

C# Crear PDF (Tutorial de ejemplo de código), Figura 05: Instalar el paquete IronPdf desde el gestor de paquetes NuGet

Instalar el paquete IronPdf desde el gestor de paquetes NuGet

En la imagen anterior, seleccione la opción IronPDF de la lista de paquetes NuGet relacionados e instale el paquete para la solución.

Uso de la línea de comandos de Visual Studio

En el menú de Visual Studio, vaya a Herramientas > Administrador de paquetes NuGet > Consola del administrador de paquetes.

C# Crear PDF (Tutorial de ejemplo de código), Figura 06: Navegar a la consola del gestor de paquetes

**Navegue a la consola del gestor de paquetes.

Introduzca la siguiente línea en la pestaña Consola del gestor de paquetes:

Install-Package IronPdf

C# Crear PDF (Tutorial de ejemplo de código), Figura 07: Paso de instalación

Paso de instalación

Ahora el paquete se descargará/instalará en el proyecto actual y estará listo para su uso.

C# Crear PDF (Tutorial de ejemplo de código), Figura 08: Proceso de instalación en la consola del gestor de paquetes

Proceso de instalación en la consola del gestor de paquetes

2. Crear un PDF a partir de HTML utilizando RenderHtmlToPdf().

Una vez instalada la librería IronPDF, el primer objetivo es crear un archivo DocumentoPDF en C#. Copie el código siguiente y péguelo en su Visual Studio, luego ejecute el programa.

var pdf = new ChromePdfRenderer();
PdfDocument doc = pdf.RenderHtmlAsPdf("<h1>This is a heading</h1>");
mypdf.SaveAs("FirstPDFDocument.pdf");
var pdf = new ChromePdfRenderer();
PdfDocument doc = pdf.RenderHtmlAsPdf("<h1>This is a heading</h1>");
mypdf.SaveAs("FirstPDFDocument.pdf");
Dim pdf = New ChromePdfRenderer()
Dim doc As PdfDocument = pdf.RenderHtmlAsPdf("<h1>This is a heading</h1>")
mypdf.SaveAs("FirstPDFDocument.pdf")
VB   C#

Después de la ejecución de su proyecto C# habrá un archivo mane "FirstPDFDocument.pdf" en la carpeta bin de su proyecto, haga doble clic en dicho archivo, y el archivo PDF se abrirá en la pestaña del navegador.

C# Crear PDF (Tutorial de ejemplo de código), Figura 09:


Creación de archivos PDF en C# o creación de archivos PDF convertir HTML a PDF es sólo unas pocas líneas de código utilizando IronPDF.

3. Crear un documento PDF a partir de una URL

Crear un archivo PDF en C# usando una URL es tan fácil como el ejemplo anterior con sólo estas tres líneas de código, el siguiente código demostrará cómo crear archivos PDF desde una URL.

using IronPdf;

var renderer = new IronPdf.ChromePdfRenderer();
//  Crear un PDF a partir de una URL o una ruta de archivo local
using var pdf = renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20");
//  Exportar a un archivo o Stream
pdf.SaveAs("url.pdf");
using IronPdf;

var renderer = new IronPdf.ChromePdfRenderer();
//  Crear un PDF a partir de una URL o una ruta de archivo local
using var pdf = renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20");
//  Exportar a un archivo o Stream
pdf.SaveAs("url.pdf");
Imports IronPdf

Private renderer = New IronPdf.ChromePdfRenderer()
'  Crear un PDF a partir de una URL o una ruta de archivo local
Private pdf = renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20")
'  Exportar a un archivo o Stream
pdf.SaveAs("url.pdf")
VB   C#

Este es el resultado del código anterior.

C# Crear PDF (Tutorial de ejemplo de código), Figura 10: Salida de archivo PDF, renderizado desde una URL

Salida de un archivo PDF, generado a partir de una URL.

Otros ejemplos de conversión de sitios complejos populares a PDF.

C# Crear PDF (Tutorial de ejemplo de código), Figura 11: Otro ejemplo de representación de un sitio web complejo

**Otro ejemplo de representación de un sitio web complejo.

4. Convertir ASP.NET MVC a PDF

Puede servir un archivo o cadena HTML existente, un documento PDF existente o un PDF en ASP.NET MVC. Para servir fácilmente estos archivos o cadenas, utilice IronPDF y acceda a él a través de una etiqueta DLL Archivo ZIP o a través del Página NuGet.

Para servir un documento PDF en ASP.NET MVC es necesario generar un archivo ArchivoResultado método. Con IronPDF puede utilizar MVC para devolver un archivo PDF.

var renderer = new IronPdf.ChromePdfRenderer();
using var pdf = renderer.RenderHTMLFileAsPdf("Project/MyHtmlDocument.html");
//  o para convertir una cadena HTML
//var pdf = renderer.RenderHtmlAsPdf("<h1>Hola IronPdf</h1>");
Response.Clear();
Response.ContentType = "application/pdf";
Response.AddHeader("Content-Disposition","attachment;filename=\"FileName.pdf\"");
//  edita esta línea para mostrar ion browser y cambia el nombre del archivo
Response.BinaryWrite(pdf.BinaryData);
Response.Flush();
Response.End();
var renderer = new IronPdf.ChromePdfRenderer();
using var pdf = renderer.RenderHTMLFileAsPdf("Project/MyHtmlDocument.html");
//  o para convertir una cadena HTML
//var pdf = renderer.RenderHtmlAsPdf("<h1>Hola IronPdf</h1>");
Response.Clear();
Response.ContentType = "application/pdf";
Response.AddHeader("Content-Disposition","attachment;filename=\"FileName.pdf\"");
//  edita esta línea para mostrar ion browser y cambia el nombre del archivo
Response.BinaryWrite(pdf.BinaryData);
Response.Flush();
Response.End();
Dim renderer = New IronPdf.ChromePdfRenderer()
Dim pdf = renderer.RenderHTMLFileAsPdf("Project/MyHtmlDocument.html")
'  o para convertir una cadena HTML
'var pdf = renderer.RenderHtmlAsPdf("<h1>Hola IronPdf</h1>");
Response.Clear()
Response.ContentType = "application/pdf"
Response.AddHeader("Content-Disposition","attachment;filename=""FileName.pdf""")
'  edita esta línea para mostrar ion browser y cambia el nombre del archivo
Response.BinaryWrite(pdf.BinaryData)
Response.Flush()
Response.End()
VB   C#

5. Renderizar vistas Razor a PDF

El siguiente método facilita la conversión de una vista Razor a una cadena. IronPDF HTML a PDF se puede utilizar para renderizar esa vista Razor como una cadena. No olvides establecer el parámetro opcional BaseURI del método IronPdf.ChromePdfRenderer.RenderHtmlAsPdf para cargar activos relativos, CSS, JavaScript e imágenes. He aquí un ejemplo:

public string RenderRazorViewToString(string viewName, object model)
{
    ViewData.Model = model;
    using (var sw = new StringWriter())
    {
        var viewResult = ViewEngines.Engines.FindPartialView(ControllerContext,
        viewName);
        var viewContext = new ViewContext(ControllerContext, viewResult.View,
        ViewData, TempData, sw);
        viewResult.View.Render(viewContext, sw);
        viewResult.ViewEngine.ReleaseView(ControllerContext, viewResult.View);
        return sw.GetStringBuilder().ToString();
    }
}
public string RenderRazorViewToString(string viewName, object model)
{
    ViewData.Model = model;
    using (var sw = new StringWriter())
    {
        var viewResult = ViewEngines.Engines.FindPartialView(ControllerContext,
        viewName);
        var viewContext = new ViewContext(ControllerContext, viewResult.View,
        ViewData, TempData, sw);
        viewResult.View.Render(viewContext, sw);
        viewResult.ViewEngine.ReleaseView(ControllerContext, viewResult.View);
        return sw.GetStringBuilder().ToString();
    }
}
Public Function RenderRazorViewToString(ByVal viewName As String, ByVal model As Object) As String
	ViewData.Model = model
	Using sw = New StringWriter()
		Dim viewResult = ViewEngines.Engines.FindPartialView(ControllerContext, viewName)
		Dim viewContext As New ViewContext(ControllerContext, viewResult.View, ViewData, TempData, sw)
		viewResult.View.Render(viewContext, sw)
		viewResult.ViewEngine.ReleaseView(ControllerContext, viewResult.View)
		Return sw.GetStringBuilder().ToString()
	End Using
End Function
VB   C#

Por favor, lea el .NET MVC PDF para aprender a renderizar una vista MVC como un archivo PDF binario.

6. Convertir XML a PDF

C# XML a PDF directamente puede ser un reto complejo y es mejor empezar con XSLT. XML y puede convertirse en PDF mediante HTML(5) mediante transformaciones XLST.

Estos documentos definen cómo puede convertirse el XML de un esquema determinado en una representación HTML precisa y constituyen una norma bien establecida.

La cadena o archivo HTML resultante puede convertirse en un PDF utilizando la función Generador de PDF .NET:

He aquí un ejemplo:

XslCompiledTransform transform = new XslCompiledTransform();
using(XmlReader reader = XmlReader.Create(new StringReader(XSLT))) {
    transform.Load(reader);
}
StringWriter results = new StringWriter();
using(XmlReader reader = XmlReader.Create(new StringReader(XML))) {
    transform.Transform(reader, null, results);
}
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
//  las opciones, cabeceras y pies de página pueden establecerse allí
//  Convertir el XML en PDF mediante XSLT
Renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf");
XslCompiledTransform transform = new XslCompiledTransform();
using(XmlReader reader = XmlReader.Create(new StringReader(XSLT))) {
    transform.Load(reader);
}
StringWriter results = new StringWriter();
using(XmlReader reader = XmlReader.Create(new StringReader(XML))) {
    transform.Transform(reader, null, results);
}
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
//  las opciones, cabeceras y pies de página pueden establecerse allí
//  Convertir el XML en PDF mediante XSLT
Renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf");
Dim transform As New XslCompiledTransform()
Using reader As XmlReader = XmlReader.Create(New StringReader(XSLT))
	transform.Load(reader)
End Using
Dim results As New StringWriter()
Using reader As XmlReader = XmlReader.Create(New StringReader(XML))
	transform.Transform(reader, Nothing, results)
End Using
Dim Renderer As New IronPdf.ChromePdfRenderer()
'  las opciones, cabeceras y pies de página pueden establecerse allí
'  Convertir el XML en PDF mediante XSLT
Renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf")
VB   C#

7. Generar informes PDF

IronPDF puede utilizarse como Lector PDF C# y ayudar a visualizar y exportar informes SSRS a PDF en ASP.NET C#. IronPDF puede utilizarse para representar instantáneas de datos como "informes" en el formato de archivo PDF. También funciona como PDF C# parser. La metodología básica consiste en generar primero el informe como documento HTML y, a continuación, convertir el HTML en PDF con IronPDF.

Para dar estilo a un informe XML, se puede analizar el XML y luego generar el HTML con los datos. Estos informes pueden generarse como HTML, que luego puede personalizarse y convertirse a formato PDF utilizando IronPDF. La forma más sencilla de servir contenido HTML en ASP.NET es utilizar la clase IronPdf.AspxToPdf en el evento Form_Load de un ASP.NET WebForms.

He aquí un ejemplo:

IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
//  añada fácilmente un encabezado a cada página
Renderer.RenderingOptions.FirstPageNumber = 1;
Renderer.RenderingOptions.TextHeader.DrawDividerLine = true;
Renderer.RenderingOptions.TextHeader.CenterText = "{url}";
Renderer.RenderingOptions.TextHeader.FontFamily = "Helvetica,Arial";
Renderer.RenderingOptions.TextHeader.FontSize = 12;
//  añada también un pie de página
Renderer.RenderingOptions.TextFooter.DrawDividerLine = true;
Renderer.RenderingOptions.TextFooter.FontFamily = "Arial";
Renderer.RenderingOptions.TextFooter.FontSize = 10;
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";
Renderer.RenderHtmlFileAsPdf("Report.html").SaveAs("Report.pdf");
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
//  añada fácilmente un encabezado a cada página
Renderer.RenderingOptions.FirstPageNumber = 1;
Renderer.RenderingOptions.TextHeader.DrawDividerLine = true;
Renderer.RenderingOptions.TextHeader.CenterText = "{url}";
Renderer.RenderingOptions.TextHeader.FontFamily = "Helvetica,Arial";
Renderer.RenderingOptions.TextHeader.FontSize = 12;
//  añada también un pie de página
Renderer.RenderingOptions.TextFooter.DrawDividerLine = true;
Renderer.RenderingOptions.TextFooter.FontFamily = "Arial";
Renderer.RenderingOptions.TextFooter.FontSize = 10;
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";
Renderer.RenderHtmlFileAsPdf("Report.html").SaveAs("Report.pdf");
Dim Renderer As New IronPdf.ChromePdfRenderer()
'  añada fácilmente un encabezado a cada página
Renderer.RenderingOptions.FirstPageNumber = 1
Renderer.RenderingOptions.TextHeader.DrawDividerLine = True
Renderer.RenderingOptions.TextHeader.CenterText = "{url}"
Renderer.RenderingOptions.TextHeader.FontFamily = "Helvetica,Arial"
Renderer.RenderingOptions.TextHeader.FontSize = 12
'  añada también un pie de página
Renderer.RenderingOptions.TextFooter.DrawDividerLine = True
Renderer.RenderingOptions.TextFooter.FontFamily = "Arial"
Renderer.RenderingOptions.TextFooter.FontSize = 10
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}"
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"
Renderer.RenderHtmlFileAsPdf("Report.html").SaveAs("Report.pdf")
VB   C#

C# Crear PDF (Tutorial de ejemplo de código), Figura 12: CSharp Crear PDF

Crear PDF con Sharp

8. Trabajar con imágenes PDF y CSS

Para utilizar IronPDF para convertir cadenas HTML a PDF, proporcione una BaseUri cuando trabaje con activos. Todos los activos como CSS, archivos JavaScript e imágenes se cargarán en relación con esa URL base.

La BaseURL puede ser una URL web que empiece por "http" para cargar activos remotos, o una ruta de archivo local para acceder a activos en su disco.

Otro truco es utilizar el método IronPdf.Imaging.ImageUtilities.ImageToDataUri para convertir cualquier objeto System.Drawing.Image o Bitmap en una cadena HTML que se puede incrustar en HTML sin guardar en disco. He aquí un ejemplo:

using var pdf = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>",@"C:\site\assets\");
pdf.SaveAs("html-with-assets.pdf");
var renderer = new IronPdf.ChromePdfRenderer();
using var advancedPDF = renderer.RenderHTMLFileAsPdf("C:\\Assets\\TestInvoice1.html");
advancedPDF.SaveAs("Invoice.pdf");
using var pdf = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>",@"C:\site\assets\");
pdf.SaveAs("html-with-assets.pdf");
var renderer = new IronPdf.ChromePdfRenderer();
using var advancedPDF = renderer.RenderHTMLFileAsPdf("C:\\Assets\\TestInvoice1.html");
advancedPDF.SaveAs("Invoice.pdf");
Dim pdf = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>","C:\site\assets\")
pdf.SaveAs("html-with-assets.pdf")
Dim renderer = New IronPdf.ChromePdfRenderer()
Dim advancedPDF = renderer.RenderHTMLFileAsPdf("C:\Assets\TestInvoice1.html")
advancedPDF.SaveAs("Invoice.pdf")
VB   C#

9. Convertir archivos ASPX a PDF

En primer lugar, vamos a acceder a la biblioteca C# "gratuita para el desarrollo" para convertir archivos ASPX a PDF. Puede descárguelo directamente o acceder a través de NuGet. Instale como de costumbre en su proyecto de Visual Studio. Además, requiere IronPdf.Extensions.ASPX desde la página oficial de NuGet a instalar. No está disponible en .NET Core porque ASPX ha sido sustituido por el modelo MVC. Ahora que tienes IronPDF y sus extensiones, verás que tiene la funcionalidad para la conversión de HTML así como la generación de ASPX a PDF como en el código de abajo.

using System;
using System.Web.UI;
using IronPdf;

namespace aspxtopdf
{
    public partial class SiteMaster : MasterPage
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            AspxToPdf.RenderThisPageAsPdf();
        }
    }
}
using System;
using System.Web.UI;
using IronPdf;

namespace aspxtopdf
{
    public partial class SiteMaster : MasterPage
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            AspxToPdf.RenderThisPageAsPdf();
        }
    }
}
Imports System
Imports System.Web.UI
Imports IronPdf

Namespace aspxtopdf
	Partial Public Class SiteMaster
		Inherits MasterPage

		Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
			AspxToPdf.RenderThisPageAsPdf()
		End Sub
	End Class
End Namespace
VB   C#

C# Crear PDF (Tutorial de ejemplo de código), Figura 13: CSharp Crear PDF

Crear PDF con Sharp

10. Ver archivo de ejemplo de HTML a PDF

El siguiente código muestra cómo utilizar IronPDF para convertir documentos HTML a PDF mediante programación.

var uri = new Uri("https://www.c-sharpcorner.com/article/how-to-create-pdf-file-in-c-sharp-using-ironpdf/");
//  convertir página en pdf
var pdf = ChromePdfRenderer.StaticRenderUrlAsPdf(uri);
//  guardar el pdf resultante en un archivo
pdf.SaveAs(Path.Combine(Directory.GetCurrentDirectory(), "UrlToPdf.Pdf"));
var uri = new Uri("https://www.c-sharpcorner.com/article/how-to-create-pdf-file-in-c-sharp-using-ironpdf/");
//  convertir página en pdf
var pdf = ChromePdfRenderer.StaticRenderUrlAsPdf(uri);
//  guardar el pdf resultante en un archivo
pdf.SaveAs(Path.Combine(Directory.GetCurrentDirectory(), "UrlToPdf.Pdf"));
Dim uri As New Uri("https://www.c-sharpcorner.com/article/how-to-create-pdf-file-in-c-sharp-using-ironpdf/")
'  convertir página en pdf
Dim pdf = ChromePdfRenderer.StaticRenderUrlAsPdf(uri)
'  guardar el pdf resultante en un archivo
pdf.SaveAs(Path.Combine(Directory.GetCurrentDirectory(), "UrlToPdf.Pdf"))
VB   C#

El archivo PDF se crea dentro de la carpeta Debug. Este es el resultado:

C# Crear PDF (Tutorial de ejemplo de código), Figura 14: CSharp Crear PDF

Crear PDF con Sharp

En Guía de iniciación explica cómo instalar IronPDF mediante NuGet (para quienes no estén familiarizados con el gestor de paquetes NuGet).

11. Generación de archivos PDF en C# .NET

Con una amplia biblioteca C# que utiliza IronPDF, cualquier página ASP.NET puede convertirse fácilmente de HTML a PDF. Esto permite un control total sobre la lectura, edición y manipulación de documentos con una sola línea de código.

He aquí un ejemplo:

using System;
using System.Web.UI;
using IronPdf;
namespace aspxtopdf
{
    public partial class _Default : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            AspxToPdf.RenderThisPageAsPdf();
        }
    }
}
using System;
using System.Web.UI;
using IronPdf;
namespace aspxtopdf
{
    public partial class _Default : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            AspxToPdf.RenderThisPageAsPdf();
        }
    }
}
Imports System
Imports System.Web.UI
Imports IronPdf
Namespace aspxtopdf
	Partial Public Class _Default
		Inherits Page

		Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)

		End Sub
		Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs)
			AspxToPdf.RenderThisPageAsPdf()
		End Sub
	End Class
End Namespace
VB   C#

C# Crear PDF (Tutorial de ejemplo de código), Figura 15: CSharp Crear PDF

Crear PDF con Sharp

Esto requiere IronPdf.Extensions.ASPX desde la página oficial de NuGet a instalar. No está disponible en .NET Core porque ASPX ha sido sustituido por el modelo MVC.

12. Generar documento PDF

Instale la biblioteca IronPDF C# HTML to PDF. Acceda al programa descarga directa de archivos.

He aquí un ejemplo muy rápido de cómo generar un PDF a partir de una cadena de entrada HTML:

/**
PDF from HTML String
anchor-generate-pdf-from-html-string
**/
private void HTMLString()
{
    //  Convierte cualquier fragmento o documento HTML en HTML
    var renderer = new IronPdf.ChromePdfRenderer();
    using var pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF</h1>");
    var outputPath = "ChromePdfRenderer.pdf";
    pdf.SaveAs(outputPath);
}
/**
PDF from HTML String
anchor-generate-pdf-from-html-string
**/
private void HTMLString()
{
    //  Convierte cualquier fragmento o documento HTML en HTML
    var renderer = new IronPdf.ChromePdfRenderer();
    using var pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF</h1>");
    var outputPath = "ChromePdfRenderer.pdf";
    pdf.SaveAs(outputPath);
}
'''
'''PDF from HTML String
'''anchor-generate-pdf-from-html-string
'''*
Private Sub HTMLString()
	'  Convierte cualquier fragmento o documento HTML en HTML
	Dim renderer = New IronPdf.ChromePdfRenderer()
	Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF</h1>")
	Dim outputPath = "ChromePdfRenderer.pdf"
	pdf.SaveAs(outputPath)
End Sub
VB   C#

El siguiente código hace uso de IronPDF para generar un PDF directamente desde un archivo ASPX:

/**
PDF from ASPX
anchor-generate-pdf-from-aspx
**/
protected void Page_Load(object sender, EventArgs e)
{
    IronPdf.AspxToPdf.RenderThisPageAsPdf();
}
/**
PDF from ASPX
anchor-generate-pdf-from-aspx
**/
protected void Page_Load(object sender, EventArgs e)
{
    IronPdf.AspxToPdf.RenderThisPageAsPdf();
}
'''
'''PDF from ASPX
'''anchor-generate-pdf-from-aspx
'''*
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
	IronPdf.AspxToPdf.RenderThisPageAsPdf()
End Sub
VB   C#

IronPDF soporta JavaScript bastante bien a través del motor de renderizado Chromium. Sin embargo, es posible que tenga que añadir un retardo al renderizado de una página para dar tiempo a que JavaScript se ejecute mientras se generan los PDF.

13. Biblioteca PDF para .NET

Con IronPDF, podemos crear y editar funciones PDF de forma sencilla según los requisitos de la aplicación. IronPDF ofrece un conjunto de funciones con su biblioteca PDF C# .NET y la proporciona gratuitamente para que los desarrolladores experimenten y optimicen sus proyectos antes de implantarlos. Las dos formas principales de acceder a la biblioteca son:

  1. Descargue y descomprima el Archivo DLL
  2. Navegue por NuGet e instale el paquete a través de Visual Studio.

    En el siguiente código, C# Forms con button1_Click demuestra lo sencillo que es crear un PDF con C#.

using IronPdf;
using System.Windows.Forms;

namespace ReadPdf
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void button1_Click(object sender, System.EventArgs e)
        {
            //Clase de conversión utilizada ChromePdfRenderer
            var renderer = new ChromePdfRenderer();
            //Obtener texto de TextBox
            string text = textBox1.Text;
            //renderizar o convertir htmlaspdf.
            renderer.RenderHtmlAsPdf("<h1>"+text+"</h1>").SaveAs("custom.pdf");
            //Confirmación
            MessageBox.Show("Done !");
        }
    }
}
using IronPdf;
using System.Windows.Forms;

namespace ReadPdf
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void button1_Click(object sender, System.EventArgs e)
        {
            //Clase de conversión utilizada ChromePdfRenderer
            var renderer = new ChromePdfRenderer();
            //Obtener texto de TextBox
            string text = textBox1.Text;
            //renderizar o convertir htmlaspdf.
            renderer.RenderHtmlAsPdf("<h1>"+text+"</h1>").SaveAs("custom.pdf");
            //Confirmación
            MessageBox.Show("Done !");
        }
    }
}
Imports IronPdf
Imports System.Windows.Forms

Namespace ReadPdf
	Partial Public Class Form1
		Inherits Form

		Public Sub New()
			InitializeComponent()
		End Sub
		Private Sub button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
			'Clase de conversión utilizada ChromePdfRenderer
			Dim renderer = New ChromePdfRenderer()
			'Obtener texto de TextBox
'INSTANT VB NOTE: The variable text was renamed since Visual Basic does not handle local variables named the same as class members well:
			Dim text_Conflict As String = textBox1.Text
			'renderizar o convertir htmlaspdf.
			renderer.RenderHtmlAsPdf("<h1>" & text_Conflict &"</h1>").SaveAs("custom.pdf")
			'Confirmación
			MessageBox.Show("Done !")
		End Sub
	End Class
End Namespace
VB   C#

Formulario C#:

C# Crear PDF (Tutorial de ejemplo de código), Figura 16: CSharp Crear PDF

Crear PDF con Sharp

14. Motor de renderizado de PDF de Chrome

El equipo de ingenieros de Iron Software se enorgullece de lanzar una actualización de IronPDF en 2021 que cambiará las reglas del juego, ahora con el renderizado de PDF "Chrome Idéntico ".

En primer lugar, debes instalar IronPDF en tu proyecto desde el gestor de paquetes NuGet llamado IronPdf. Cambiar al nuevo renderizador a nivel global es sencillo. Este enfoque actualiza todos los usos del código existente de ChromePdfRenderer y AspxToPdf.

Algunas de las características de Chrome PDF Rendering Feature son:

  1. Renderizado de alta calidad
    1. El último "Blink!" Renderizado HTML. Elija entre Renderizado idéntico al cromado o Renderizado mejorado
  2. Renders un 20% más rápidos
    1. Proporciona multithreading y Async sin esfuerzo, utilizando tantos núcleos de CPU como desee. Para aplicaciones SAAS y de alta carga, esto puede ser 5-20 veces más rápido, superando el uso directo del navegador y los controladores web.
  3. **Asistencia completa
    1. Compatibilidad total con JavaScript, maquetación responsiva y CSS3.
    2. Azure como ciudadano de primera clase. Simplemente funciona.
    3. Mantenimiento continuo y soporte completo mejorado para .NET 6, 5, Core y Framework 4.0+.
  4. Probado rigurosamente
    1. La versión ha superado con éxito 1156 pruebas de integración y unidades verdes. (y ningún rojo)garantizando una estabilidad similar a la de la versión principal y mejorándola de forma continua y activa cada día.
  5. **Cumplimiento de la Sección 508 de Accesibilidad

    Produce PDF accesibles utilizando el estándar PDF(UA) etiquetado.

    Puedes usar el IronPdf.Rendering.AdaptivePdfRenderer para cambiar entre el renderizado 'Chrome' y 'WebKit' en una instancia. Si prefieres el estilo de renderizado antiguo para algunas de tus aplicaciones o no quieres romper las pruebas unitarias. Multithreading y Async para el motor de renderizado de Chrome está en una liga diferente a la de la versión anterior.

  6. Para multithreading de nivel empresarial, utiliza el ChromePdfRenderer en tus threads existentes y funcionará. En el caso de las aplicaciones web, tampoco es necesario configurar nada.
  7. Para el procesamiento por lotes de HTML a PDF, se recomienda utilizar el patrón incorporado de .NET Parallel.ForEach.
  8. Se proporcionan variantes Async para todos los métodos de renderizado como ChromePdfRenderer.RenderHtmlAsPdfAsync

    He aquí un ejemplo:

IChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.FitToPaper = true;
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen;
renderer.RenderingOptions.PrintHtmlBackgrounds = true;
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;

using var doc = renderer.RenderHtmlAsPdf("<h1>Hello world! This is sample for IronPdf</h1>");
doc.SaveAs("google_chrome.pdf");
IChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.FitToPaper = true;
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen;
renderer.RenderingOptions.PrintHtmlBackgrounds = true;
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;

using var doc = renderer.RenderHtmlAsPdf("<h1>Hello world! This is sample for IronPdf</h1>");
doc.SaveAs("google_chrome.pdf");
Dim renderer As IChromePdfRenderer = New ChromePdfRenderer()
renderer.RenderingOptions.FitToPaper = True
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen
renderer.RenderingOptions.PrintHtmlBackgrounds = True
renderer.RenderingOptions.CreatePdfFormsFromHtml = True

Dim doc = renderer.RenderHtmlAsPdf("<h1>Hello world! This is sample for IronPdf</h1>")
doc.SaveAs("google_chrome.pdf")
VB   C#

C# Crear PDF (Tutorial de ejemplo de código), Figura 7: CSharp Crear PDF

Crear PDF con Sharp

15. Resumen

Gracias por leer! Este artículo muestra cómo crear un documento PDF en C# utilizando IronPDF. IronPDF es ideal para los usuarios que necesitan convertir el contenido de HTML a PDF sin utilizar etiquetas HTML por su facilidad de uso y sus funciones adicionales como JavaScript, CSS e imágenes.

Prueba estos métodos y deja tu opinión en la sección de comentarios de este artículo.! Si aún no es cliente de IronPDF, puede probar la aplicación 30 días de prueba gratuita para comprobar sus funciones disponibles.

Si compra la Iron Suite completa, obtendrá los 7 productos por el precio de 2. Para obtener más información sobre la Iron Suite, haga clic aquí. licencias Visite la página página de precios para adquirir el paquete completo.


Acceso rápido a la biblioteca

Leer la referencia de la API

La documentación de IronPDF está disponible en la Referencia interactiva de la API.

Leer la referencia de la API
< ANTERIOR
Biblioteca PDF .NET Core
SIGUIENTE >
x509certificate2 Añadir firma digital a PDF mediante programación

¿Listo para empezar? Versión: 2024.6 recién publicada

Comenzar prueba gratuita Descargas totales: 9,541,998
Ver licencias >