USO DE IRONPDF

Cómo ver archivos PDF en ASP.NET utilizando C# e IronPDF

Actualizado 4 de noviembre, 2021
Compartir:

La mayoría de la gente abre archivos PDF en un ordenador utilizando una aplicación de escritorio dedicada, pero los ingenieros de software también pueden utilizar IronPDF para crear, ver, abrir, leer y editar contenido PDF con C# mediante programación.

IronPDF resultó ser un plugin muy útil a la hora de leer archivos PDF en ASP.NET y C#.

Puede descargar el archivo del proyecto desde este enlace.

Es posible crear documentos PDF de forma rápida y sencilla utilizando C# con IronPDF.

Gran parte del diseño y la maquetación de documentos PDF puede realizarse utilizando activos HTML existentes o delegando la tarea en empleados de diseño web; se encarga de la laboriosa tarea de integrar la generación de PDF en su aplicación y automatiza la conversión de documentos preparados en PDF. Con .NET, puede:

  • Convierte formularios web, páginas HTML locales y otros sitios web a formato PDF.
  • Permite a los usuarios descargar documentos, compartirlos con otros por correo electrónico o guardarlos en la nube.
  • Facturar a los clientes y presentar presupuestos; preparar informes; negociar contratos y otros trámites.
  • Trabajar con ASP.NET, ASP.NET Core, Web Forms, MVC, Web APIs en .NET Framework y .NET Core, y otros lenguajes de programación.

Configuración de la biblioteca IronPDF

Hay dos formas de instalar la biblioteca;

Instalación con el gestor de paquetes NuGet

IronPDF puede instalarse mediante el complemento de Visual Studio o el gestor de paquetes NuGet desde la línea de comandos. Navegue a la Consola, escriba el siguiente código en Visual Studio:

Install-Package IronPdf

Descargue el archivo DLL directamente del sitio web

También puede obtener la DLL directamente del sitio web.

Recuerde incluir la siguiente observación en la parte superior de cualquier archivo de clase cs que haga uso de IronPDF:

Echa un vistazo Características de IronPDF.

IronPDF es un plugin imprescindible. Consigue el tuyo ahora y Pruébelo con NuGet.

Crear un archivo PDF a partir de una cadena HTML en .NET C#

Crear un archivo PDF a partir de una cadena HTML en C# es un método eficaz y gratificante de crear un nuevo archivo PDF en C#.

En RenderHtmlAsPdf de una función Renderizador de PDF cromado ofrece una forma sencilla de convertir cualquier archivo HTML (HTML5) en un documento PDF, gracias a la versión incrustada del motor Google Chromium en la DLL IronPDF.

//Pasar HTML a pdf
var renderer = new ChromePdfRenderer();
using var rendered_pdf = renderer.RenderHtmAsPdf("<h1>My First HTML to Pdf</h1>");

var Output_Path = "My_First_Html.pdf";
PDF.SaveAs(Output_Path);
System.Diagnostics.Process.Start(Output_Path);
//Pasar HTML a pdf
var renderer = new ChromePdfRenderer();
using var rendered_pdf = renderer.RenderHtmAsPdf("<h1>My First HTML to Pdf</h1>");

var Output_Path = "My_First_Html.pdf";
PDF.SaveAs(Output_Path);
System.Diagnostics.Process.Start(Output_Path);
'Pasar HTML a pdf
Dim renderer = New ChromePdfRenderer()
Dim rendered_pdf = renderer.RenderHtmAsPdf("<h1>My First HTML to Pdf</h1>")

Dim Output_Path = "My_First_Html.pdf"
PDF.SaveAs(Output_Path)
System.Diagnostics.Process.Start(Output_Path)
VB   C#

RenderHtmlAsPdf es una potente herramienta que soporta CSS, JavaScript e imágenes en total. Puede ser necesario establecer el segundo argumento de RenderHtmlAsPdf si estos materiales se almacenan en un disco duro.

El siguiente código generará un archivo PDF:

var Render_pdf = renderer.RenderHtmlAsPdf("<img src='image_1.png'/>", @"C:\Newproject");
var Render_pdf = renderer.RenderHtmlAsPdf("<img src='image_1.png'/>", @"C:\Newproject");
Dim Render_pdf = renderer.RenderHtmlAsPdf("<img src='image_1.png'/>", "C:\Newproject")
VB   C#

Todas las hojas de estilo CSS, imágenes y archivos JavaScript referenciados serán relativos a la BaseUrlPath, permitiendo mantener una estructura más organizada y lógica. Por supuesto, puede utilizar imágenes, hojas de estilo y recursos disponibles en Internet, como Web Fonts, Google Fonts e incluso jQuery, si lo desea.

Crea un documento PDF.

Utilización de una URL HTML existente

Las URL existentes pueden convertirse en PDF con C# de forma muy eficaz y sencilla; Esto también permite a los equipos dividir el diseño de PDF y el trabajo de renderizado de PDF back-end entre varias secciones, lo que resulta beneficioso.

El siguiente código muestra cómo mostrar la página endeavorcreative.com desde su URL:

//Convertir url en pdf
var renderer = new ChromePdfRenderer();
using var Rendered_pdf = renderer.RenderUrlAsPdf("https://endeavorcreative.com/setting-up-wordpress-website-from-scratch/");

var Output_Path = "Url_pdf.pdf";
Rendered_pdf.SaveAs(Output_Path);
System.Diagnostics.Process.Start(Output_Path);
//Convertir url en pdf
var renderer = new ChromePdfRenderer();
using var Rendered_pdf = renderer.RenderUrlAsPdf("https://endeavorcreative.com/setting-up-wordpress-website-from-scratch/");

var Output_Path = "Url_pdf.pdf";
Rendered_pdf.SaveAs(Output_Path);
System.Diagnostics.Process.Start(Output_Path);
'Convertir url en pdf
Dim renderer = New ChromePdfRenderer()
Dim Rendered_pdf = renderer.RenderUrlAsPdf("https://endeavorcreative.com/setting-up-wordpress-website-from-scratch/")

Dim Output_Path = "Url_pdf.pdf"
Rendered_pdf.SaveAs(Output_Path)
System.Diagnostics.Process.Start(Output_Path)
VB   C#

Como resultado, todos los hipervínculos (Enlaces HTML) e incluso los formularios HTML se conservan en el PDF generado.

Crear un documento PDF a partir de un documento HTML existente

Esta sección muestra cómo renderizar cualquier archivo HTML local. Aparecerá que el archivo ha sido abierto usando el protocolo file:/ para todos los activos relativos como CSS, imágenes y JavaScript, entre otros.

//Convertir html existente en pdf
var renderer = new ChromePdfRenderer();
using var Rendered_pdf = renderer.RenderHtmlFileAsPdf("Assets/test1.html");

var Output_Path = "test1_pdf.pdf";
Rendered_pdf.SaveAs(Output_Path);
System.Diagnostics.Process.Start(Output_Path);
//Convertir html existente en pdf
var renderer = new ChromePdfRenderer();
using var Rendered_pdf = renderer.RenderHtmlFileAsPdf("Assets/test1.html");

var Output_Path = "test1_pdf.pdf";
Rendered_pdf.SaveAs(Output_Path);
System.Diagnostics.Process.Start(Output_Path);
'Convertir html existente en pdf
Dim renderer = New ChromePdfRenderer()
Dim Rendered_pdf = renderer.RenderHtmlFileAsPdf("Assets/test1.html")

Dim Output_Path = "test1_pdf.pdf"
Rendered_pdf.SaveAs(Output_Path)
System.Diagnostics.Process.Start(Output_Path)
VB   C#

La ventaja de esta estrategia es que permite a los desarrolladores probar el contenido HTML en un navegador mientras lo crean. El motor de renderizado de IronPDF se basa en el navegador web Chrome. Por lo tanto, se recomienda convertir XML a PDF; La impresión de contenido XML en PDF puede realizarse mediante plantillas XSLT.

Conversión de formularios web ASP.NET a un archivo PDF

Con una sola línea de código, puede convertir formularios en línea ASP.NET a formato PDF en lugar de HTML. Coloque la línea de código en el método Page_Load del archivo code-behind de la página para que aparezca en la página.

Las aplicaciones ASP.NET Web Forms pueden crearse desde cero o abrirse a partir de una versión anterior.

Instale el paquete NuGet si aún no está instalado.

La palabra clave using debe utilizarse para importar el espacio de nombres IronPdf.

Diríjase al código de la página que desea convertir a PDF. Por ejemplo, el archivo Default.aspx.cs utilizando ASP.NET

RenderThisPageAsPdf es un método de la clase AspxToPdf.

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

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

namespace WebApplication7
{
    public partial class _Default : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {            
            AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.InBrowser);
        }
    }
}
Imports IronPdf
Imports System
Imports System.Web.UI

Namespace WebApplication7
	Partial Public Class _Default
		Inherits Page

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

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.

Aplicar plantillas HTML

Para los desarrolladores de intranets y sitios web, la capacidad de crear plantillas o "producir por lotes" PDF es una necesidad estándar.

En lugar de crear una plantilla para un documento PDF, la biblioteca IronPDF ofrece una forma de generar una plantilla para HTML aprovechando una tecnología existente y bien probada.

Se crea un archivo PDF generado dinámicamente cuando la plantilla HTML se complementa con datos de una cadena de consulta o una base de datos, como se muestra a continuación.

Como ejemplo, considere la clase String de C# y sus propiedades. El método de formato funciona bien para operaciones básicas de "fusión de correo".

String.Format("<h1>Hello {}!<h1/>","World");
String.Format("<h1>Hello {}!<h1/>","World");
String.Format("<h1>Hello {}!<h1/>","World")
VB   C#

Dado que los archivos HTML pueden ser bastante extensos, es habitual utilizar marcadores de posición arbitrarios como [[NOMBRE]] y sustituirlos por datos precisos.

El siguiente ejemplo generará tres documentos PDF, cada uno de ellos personalizado para un usuario diferente.

var HtmlTemplate = "<p>[[NAME]]</p>";
var Names = new [] { "John", "James", "Jenny" };
foreach (var name in Names) {
var HtmlInstance = HtmlTemplate.Replace("[[NAME]]", name);

var renderer = new ChromePdfRenderer();
using var pdf = renderer.RenderHtmlAsPdf(HtmlInstance);
pdf.SaveAs(name + ".pdf");
}
var HtmlTemplate = "<p>[[NAME]]</p>";
var Names = new [] { "John", "James", "Jenny" };
foreach (var name in Names) {
var HtmlInstance = HtmlTemplate.Replace("[[NAME]]", name);

var renderer = new ChromePdfRenderer();
using var pdf = renderer.RenderHtmlAsPdf(HtmlInstance);
pdf.SaveAs(name + ".pdf");
}
Dim HtmlTemplate = "<p>[[NAME]]</p>"
Dim Names = { "John", "James", "Jenny" }
For Each name In Names
Dim HtmlInstance = HtmlTemplate.Replace("[[NAME]]", name)

Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf(HtmlInstance)
pdf.SaveAs(name & ".pdf")
Next name
VB   C#

ASP.NET MVC Routing Descargar la versión PDF de esta página

Con ASP.NET MVC Framework, puede dirigir al usuario a un archivo PDF.

Cuando cree una nueva aplicación ASP.NET MVC o añada un controlador MVC a una aplicación existente, seleccione esta opción. Inicie el asistente para nuevos proyectos de Visual Studio seleccionando Aplicación Web ASP.NET (.NET Framework) > MVC en el menú desplegable. También puede abrir un proyecto MVC existente. Sustituya el método Index en el archivo HomeController de la carpeta Controllers, o cree un nuevo controlador en la carpeta Controllers.

A continuación se muestra un ejemplo de cómo debe escribirse el código:

using IronPdf;
using System;
using System.Web.Mvc;

namespace WebApplication8.Controllers
{
    public class HomeController : Controller
    {
        public ActionResult Index()
        {
            using var PDF = HtmlToPdf.StaticRenderUrlAsPdf(new Uri("https://es.wikipedia.org"));
            return File(PDF.BinaryData, "application/pdf", "Wiki.Pdf");
        }

        public ActionResult About()
        {
            ViewBag.Message = "Your application description page.";

            return View();
        }

        public ActionResult Contact()
        {
            ViewBag.Message = "Your contact page.";

            return View();
        }
    }
}
using IronPdf;
using System;
using System.Web.Mvc;

namespace WebApplication8.Controllers
{
    public class HomeController : Controller
    {
        public ActionResult Index()
        {
            using var PDF = HtmlToPdf.StaticRenderUrlAsPdf(new Uri("https://es.wikipedia.org"));
            return File(PDF.BinaryData, "application/pdf", "Wiki.Pdf");
        }

        public ActionResult About()
        {
            ViewBag.Message = "Your application description page.";

            return View();
        }

        public ActionResult Contact()
        {
            ViewBag.Message = "Your contact page.";

            return View();
        }
    }
}
Imports IronPdf
Imports System
Imports System.Web.Mvc

Namespace WebApplication8.Controllers
	Public Class HomeController
		Inherits Controller

		Public Function Index() As ActionResult
			Dim PDF = HtmlToPdf.StaticRenderUrlAsPdf(New Uri("https://es.wikipedia.org"))
			Return File(PDF.BinaryData, "application/pdf", "Wiki.Pdf")
		End Function

		Public Function About() As ActionResult
			ViewBag.Message = "Your application description page."

			Return View()
		End Function

		Public Function Contact() As ActionResult
			ViewBag.Message = "Your contact page."

			Return View()
		End Function
	End Class
End Namespace
VB   C#

Añadir una portada a un documento PDF

Cómo ver archivos PDF en ASP.NET utilizando C# y IronPDF, Figura 1: Añadir una portada a un documento PDF

Añadir una portada a un documento PDF

IronPDF simplifica el proceso de fusión de documentos PDF. La aplicación más común de esta técnica es añadir una portada o contraportada a un documento PDF ya renderizado.

Para ello, prepare una portada y utilice las funciones de PdfDocument.

Para combinar los dos documentos, utilice la función Fusión método estático.

var renderer = new ChromePdfRenderer();
using var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf/");
using var merged = PdfDocument.Merge(new PdfDocument("CoverPage.pdf"), pdf);
merged.SaveAs("Combined.Pdf");
var renderer = new ChromePdfRenderer();
using var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf/");
using var merged = PdfDocument.Merge(new PdfDocument("CoverPage.pdf"), pdf);
merged.SaveAs("Combined.Pdf");
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf/")
Dim merged = PdfDocument.Merge(New PdfDocument("CoverPage.pdf"), pdf)
merged.SaveAs("Combined.Pdf")
VB   C#

Añadir una marca de agua al documento

Por último, pero no por ello menos importante, es posible añadir una marca de agua a los documentos PDF mediante código C#; se puede utilizar para añadir un descargo de responsabilidad en cada página de un documento indicando que es "confidencial" o "una muestra".

//  preparar un sello
HtmlStamper stamper = new HtmlStamper("<h2 style='color:red'>SAMPLE</h2>")
{
    HorizontalOffset = new Length(-3, MeasurementUnit.Inch),
    VerticalAlignment = VerticalAlignment.Bottom
};

//  Estampa una marca de agua en un PDF nuevo o existente
var renderer = new ChromePdfRenderer();
using var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");
pdf.ApplyStamp(stamper);
pdf.SaveAs(@"C:\PathToWatermarked.pdf");
//  preparar un sello
HtmlStamper stamper = new HtmlStamper("<h2 style='color:red'>SAMPLE</h2>")
{
    HorizontalOffset = new Length(-3, MeasurementUnit.Inch),
    VerticalAlignment = VerticalAlignment.Bottom
};

//  Estampa una marca de agua en un PDF nuevo o existente
var renderer = new ChromePdfRenderer();
using var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");
pdf.ApplyStamp(stamper);
pdf.SaveAs(@"C:\PathToWatermarked.pdf");
'  preparar un sello
Dim stamper As New HtmlStamper("<h2 style='color:red'>SAMPLE</h2>") With {
	.HorizontalOffset = New Length(-3, MeasurementUnit.Inch),
	.VerticalAlignment = VerticalAlignment.Bottom
}

'  Estampa una marca de agua en un PDF nuevo o existente
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf")
pdf.ApplyStamp(stamper)
pdf.SaveAs("C:\PathToWatermarked.pdf")
VB   C#

Proteja su archivo PDF con una contraseña

Al establecer la propiedad de contraseña de un documento PDF, éste se cifrará y el usuario deberá proporcionar la contraseña correcta para leer el documento. Este ejemplo se puede utilizar en una aplicación de consola .NET Core.

using IronPdf;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string [] args)
        {
            var renderer = new ChromePdfRenderer();
            using var pdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello World<h1>");
            pdfDocument.Password = "strong!@#pass&^%word";
            pdfDocument.SaveAs("secured.pdf");
        }
    }
}
using IronPdf;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string [] args)
        {
            var renderer = new ChromePdfRenderer();
            using var pdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello World<h1>");
            pdfDocument.Password = "strong!@#pass&^%word";
            pdfDocument.SaveAs("secured.pdf");
        }
    }
}
Imports IronPdf

Namespace ConsoleApp
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			Dim renderer = New ChromePdfRenderer()
			Dim pdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello World<h1>")
			pdfDocument.Password = "strong!@#pass&^%word"
			pdfDocument.SaveAs("secured.pdf")
		End Sub
	End Class
End Namespace
VB   C#

Sin las ventajas mencionadas anteriormente, con el IronPDF, también puede:

  • Extraer imágenes y texto de PDF mediante OCR
  • Editar el contenido HTML de la web que has convertido
  • Mejorar primer plano y fondo imágenes
  • Añadir firma digital a tus PDF
  • Rellene automáticamente su Formularios PDF

    Crear PDF es todo un reto; es posible que algunas personas nunca se hayan topado con las nociones fundamentales que deben emplear para elaborar los documentos más sobresalientes. Por ello, IronPDF es extremadamente útil, ya que simplifica la creación de PDF y, como resultado, mejora la presentación original de los documentos creados a partir de PDF y HTML.

    Según la información proporcionada en la documentación y el análisis de la competencia: IronPDF es la herramienta más eficaz a la hora de crear archivos PDF, ya que facilita a cualquier persona, incluso a quienes trabajan en oficinas o escuelas, la realización de sus tareas de forma eficaz.

    Cómo ver archivos PDF en ASP.NET utilizando C# e IronPDF, Figura 2: Cómo ver archivos PDF en ASP.NET utilizando C# e IronPDF

    Cómo ver archivos PDF en ASP.NET con C&num e IronPDF

    IronPDF es una biblioteca .NET imprescindible. Consigue el tuyo ahora y Pruébelo con NuGet.

< ANTERIOR
Crear PDF en C# a partir de un archivo HTML
SIGUIENTE >
5 pasos para generar un archivo PDF en C# con IRON PDF

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

Descarga gratuita de NuGet Descargas totales: 9,974,197 Ver licencias >
123