USO DE IRONPDF

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

Actualizado 4 de septiembre, 2024
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 yJava. 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 deartículos de comparación de bibliotecas de terceros.

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 comocreación de 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 .NET Framework

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, busca 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 RenderHtmlAsPdf()

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

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

var pdf = new ChromePdfRenderer();
PdfDocument doc = pdf.RenderHtmlAsPdf("<h1>This is a heading</h1>");
mypdf.SaveAs("FirstPDFDocument.pdf");
IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

var pdf = new ChromePdfRenderer();
PdfDocument doc = pdf.RenderHtmlAsPdf("<h1>This is a heading</h1>");
mypdf.SaveAs("FirstPDFDocument.pdf");
IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

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 llamado "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 PDFconvertir 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# utilizando una URL es tan fácil como en el ejemplo anterior con sólo estas tres líneas de código. El siguiente código demostrará cómo crear archivos PDF a partir de una URL.

using IronPdf;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

var renderer = new IronPdf.ChromePdfRenderer();
// Create a PDF from a URL or local file path
using var pdf = renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20");
// Export to a file or Stream
pdf.SaveAs("url.pdf");
using IronPdf;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

var renderer = new IronPdf.ChromePdfRenderer();
// Create a PDF from a URL or local file path
using var pdf = renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20");
// Export to a file or Stream
pdf.SaveAs("url.pdf");
Imports IronPdf

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

Dim renderer = New IronPdf.ChromePdfRenderer()
' Create a PDF from a URL or local file path
Dim pdf = renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20")
' Export to a file or 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 etiquetaDLL Archivo ZIP o a través delPaquete NuGet IronPDF.

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

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

var renderer = new IronPdf.ChromePdfRenderer();
using var pdf = renderer.RenderHtmlFileAsPdf("Project/MyHtmlDocument.html");
// or to convert an HTML string
//var pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPdf</h1>");
Response.Clear();
Response.ContentType = "application/pdf";
Response.AddHeader("Content-Disposition","attachment;filename=\"FileName.pdf\"");
// edit this line to display ion browser and change the file name
Response.BinaryWrite(pdf.BinaryData);
Response.Flush();
Response.End();
IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

var renderer = new IronPdf.ChromePdfRenderer();
using var pdf = renderer.RenderHtmlFileAsPdf("Project/MyHtmlDocument.html");
// or to convert an HTML string
//var pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPdf</h1>");
Response.Clear();
Response.ContentType = "application/pdf";
Response.AddHeader("Content-Disposition","attachment;filename=\"FileName.pdf\"");
// edit this line to display ion browser and change the file name
Response.BinaryWrite(pdf.BinaryData);
Response.Flush();
Response.End();
IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

Dim renderer = New IronPdf.ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlFileAsPdf("Project/MyHtmlDocument.html")
' or to convert an HTML string
'var pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPdf</h1>");
Response.Clear()
Response.ContentType = "application/pdf"
Response.AddHeader("Content-Disposition","attachment;filename=""FileName.pdf""")
' edit this line to display ion browser and change the file name
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. IronPDFConversión de 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)
{ 
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

    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)
{ 
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

    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
	IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

	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 elguía PDF de .NET MVC 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 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ónGenerador de PDF .NET:

He aquí un ejemplo:

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

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();
// options, headers and footers may be set there
// Render the XML as a PDF via XSLT
Renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf");
IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

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();
// options, headers and footers may be set there
// Render the XML as a PDF via XSLT
Renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf");
IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

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()
' options, headers and footers may be set there
' Render the XML as a PDF via XSLT
Renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf")
VB   C#

7. Generar informes PDF

IronPDF puede utilizarse comoLector de PDF para 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 comoPDF Parser C#. 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.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
// add a header to very page easily
Renderer.RenderingOptions.FirstPageNumber = 1;
Renderer.RenderingOptions.TextHeader.DrawDividerLine = true;
Renderer.RenderingOptions.TextHeader.CenterText = "{url}";
Renderer.RenderingOptions.TextFooter.Font = IronSoftware.Drawing.FontTypes.Helvetica;
Renderer.RenderingOptions.TextHeader.FontSize = 12;
// add a footer too
Renderer.RenderingOptions.TextFooter.DrawDividerLine = true;
Renderer.RenderingOptions.TextFooter.Font = IronSoftware.Drawing.FontTypes.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.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
// add a header to very page easily
Renderer.RenderingOptions.FirstPageNumber = 1;
Renderer.RenderingOptions.TextHeader.DrawDividerLine = true;
Renderer.RenderingOptions.TextHeader.CenterText = "{url}";
Renderer.RenderingOptions.TextFooter.Font = IronSoftware.Drawing.FontTypes.Helvetica;
Renderer.RenderingOptions.TextHeader.FontSize = 12;
// add a footer too
Renderer.RenderingOptions.TextFooter.DrawDividerLine = true;
Renderer.RenderingOptions.TextFooter.Font = IronSoftware.Drawing.FontTypes.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.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

Dim Renderer As New IronPdf.ChromePdfRenderer()
' add a header to very page easily
Renderer.RenderingOptions.FirstPageNumber = 1
Renderer.RenderingOptions.TextHeader.DrawDividerLine = True
Renderer.RenderingOptions.TextHeader.CenterText = "{url}"
Renderer.RenderingOptions.TextFooter.Font = IronSoftware.Drawing.FontTypes.Helvetica
Renderer.RenderingOptions.TextHeader.FontSize = 12
' add a footer too
Renderer.RenderingOptions.TextFooter.DrawDividerLine = True
Renderer.RenderingOptions.TextFooter.Font = IronSoftware.Drawing.FontTypes.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:

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

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");
IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

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");
IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

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. Puededescargar la herramienta de conversión ASPX o acceder a través deIronPDF NuGet. Instale como de costumbre en su proyecto de Visual Studio. Además, requiereIronPdf.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)
        {
            IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
            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)
        {
            IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
            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)
			IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
			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.

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

var uri = new Uri("https://www.c-sharpcorner.com/article/how-to-create-pdf-file-in-c-sharp-using-ironpdf/");
// turn page into pdf
var pdf = ChromePdfRenderer.StaticRenderUrlAsPdf(uri);
// save resulting pdf into file
pdf.SaveAs(Path.Combine(Directory.GetCurrentDirectory(), "UrlToPdf.Pdf"));
IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

var uri = new Uri("https://www.c-sharpcorner.com/article/how-to-create-pdf-file-in-c-sharp-using-ironpdf/");
// turn page into pdf
var pdf = ChromePdfRenderer.StaticRenderUrlAsPdf(uri);
// save resulting pdf into file
pdf.SaveAs(Path.Combine(Directory.GetCurrentDirectory(), "UrlToPdf.Pdf"));
IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

Dim uri As New Uri("https://www.c-sharpcorner.com/article/how-to-create-pdf-file-in-c-sharp-using-ironpdf/")
' turn page into pdf
Dim pdf = ChromePdfRenderer.StaticRenderUrlAsPdf(uri)
' save resulting pdf into file
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

EnGuía de iniciación explica cómoinstalar 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)
        {
            IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
            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)
        {
            IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
            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)
			IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
			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 requiereIronPdf.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 programadescarga directa de archivos para generación de PDF.

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()
{
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

    // Render any HTML fragment or document to 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()
{
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

    // Render any HTML fragment or document to 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()
	IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

	' Render any HTML fragment or document to 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.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
    IronPdf.AspxToPdf.RenderThisPageAsPdf();
}
/**
PDF from ASPX
anchor-generate-pdf-from-aspx
**/
protected void Page_Load(object sender, EventArgs e)
{
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
    IronPdf.AspxToPdf.RenderThisPageAsPdf();
}
'''
'''PDF from ASPX
'''anchor-generate-pdf-from-aspx
'''*
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
	IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
	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. Las dos formas principales de acceder a la biblioteca son:

  1. Descargue y descomprima elArchivo DLL para PDF.NET Library

  2. Navegue pora través de 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)
        {
            IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

            //Used ChromePdfRenderer Convert Class
            var renderer = new ChromePdfRenderer();
            //Getting Text from TextBox
            string text = textBox1.Text;
            //rendering or converting htmlaspdf.
            renderer.RenderHtmlAsPdf("<h1>"+text+"</h1>").SaveAs("custom.pdf");
            //Confirmation
            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)
        {
            IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

            //Used ChromePdfRenderer Convert Class
            var renderer = new ChromePdfRenderer();
            //Getting Text from TextBox
            string text = textBox1.Text;
            //rendering or converting htmlaspdf.
            renderer.RenderHtmlAsPdf("<h1>"+text+"</h1>").SaveAs("custom.pdf");
            //Confirmation
            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)
			IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

			'Used ChromePdfRenderer Convert Class
			Dim renderer = New ChromePdfRenderer()
			'Getting Text from 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
			'rendering or converting htmlaspdf.
			renderer.RenderHtmlAsPdf("<h1>" & text_Conflict &"</h1>").SaveAs("custom.pdf")
			'Confirmation
			MessageBox.Show("Done !")
		End Sub
	End Class
End Namespace
VB   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 que cambia las reglas del juego y que ahora incluye "Chrome Identical" PDF rendering.

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

    • El último "Blink!" Renderizado HTML. Elija entre Renderizado idéntico a Chrome o Renderizado mejorado.
  2. Renders un 20% más rápidos

    • 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

    • Compatibilidad total con JavaScript, maquetación responsiva y CSS3.

    • Azure como ciudadano de primera clase. Simplemente funciona.

    • Mantenimiento continuo y soporte completo mejorado para .NET 6, 5, Core y Framework 4.0+.
  4. Probado rigurosamente

    • 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 utilizandoel estándar PDF(UA) etiquetado.

    Explora lafunciones de soporte multithreading y async para el motor de renderizado de Chrome.

    He aquí un ejemplo:

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

IChromePdfRenderer renderer = new ChromePdfRenderer();
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");
IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

IChromePdfRenderer renderer = new ChromePdfRenderer();
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");
IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

Dim renderer As IChromePdfRenderer = New ChromePdfRenderer()
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 17: 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ón30 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 más detalles sobreOpciones de licencia de IronPDFvisite la páginaPágina de precios de Iron Suite para adquirir el paquete completo.


Acceso rápido a la biblioteca

Documentation related to Acceso rápido a la biblioteca

Leer la referencia de la API

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

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.12 acaba de salir

Descarga gratuita de NuGet Descargas totales: 11,622,374 Ver licencias >