USO DE IRONPDF

Crear un archivo PDF con Blazor Tutorial

Actualizado 23 de septiembre, 2022
Compartir:

IronPDF, una conocida biblioteca de C#, funciona con aplicaciones Blazor. Esta revisión le guiará a través del uso de IronPDF para incrustar un informe PDF en una aplicación Blazor, mostrando su perfecta integración y eficacia.

1. Características de IronPDF

Los desarrolladores pueden crear, leer y procesar rápidamente un documento PDF con la ayuda de la robusta biblioteca PDF IronPDF .NET. IronPDF tiene un motor Chrome integrado y ofrece una gran cantidad de funciones prácticas y potentes. Entre ellas se incluyen la capacidad de convertir HTML5, JavaScript, CSS e imágenes a PDF, la capacidad de añadir encabezados y pies de página exclusivos a los documentos PDF y la capacidad de producir PDF exactamente como aparecen en un navegador web. IronPDF es compatible con diversas tecnologías web, como HTML, ASPX, Razor Pages y marcos MVC.

Los principales atributos de IronPDF son los siguientes:

  • IronPDF ofrece un control total sobre la creación y modificación de archivos PDF en aplicaciones .NET C#.
  • IronPDF puede generar archivos PDF de páginas web a partir de su URL utilizando configuraciones específicas de User-Agent, Proxy, Header y Cookie.
  • IronPDF puede generar archivos PDF para páginas web ubicadas detrás de formularios de acceso con variables de formulario
  • IronPDF puede extraer y/o eliminar fotos a partir de archivos PDF preexistentes
  • IronPDF puede añadir texto, fotos y marcadores, marcas de agua y otros elementos a documentos PDF
  • IronPDF facilita fusionar y dividir páginas de uno o varios documentos PDF.
  • IronPDF puede procesar activos de páginas web como JavaScript, CSS y archivos multimedia y convertirlos en documentos PDF tal y como aparecerían en un navegador.
  • IronPDF es compatible con todos los marcos .NET, incluidos .NET Core, .NET Standard, etc.

2. ¿Qué es Blazor?

Blazor es un Framework de Aplicaciones Web que hace factible la creación de Aplicaciones Web del lado del cliente en C# y HTML utilizando Web Assembly.

Las aplicaciones Web Assembly se envían al navegador en un formato de instrucciones binarias que puede funcionar a una velocidad cercana a la nativa. Esto ha creado nuevas posibilidades para que lenguajes como C# se ejecuten dentro del navegador.

Creación de un nuevo proyecto en Visual Studio

Para empezar, abra la aplicación Microsoft Visual Studio y seleccione "Nuevo proyecto" en el menú Archivo. A continuación, seleccione "Blazor Server App".

Crear un archivo PDF con Blazor Tutorial, Figura 1: Creación de un nuevo proyecto en Visual Studio

Creación de un nuevo proyecto en Visual Studio

Introduzca un nombre de proyecto y seleccione una ruta de archivo. A continuación, haga clic en el botón Crear.

Crear un archivo PDF con Blazor Tutorial, Figura 2: Elegir el nombre y la ubicación de la nueva aplicación Blazor

Elegir el nombre y la ubicación de la nueva Aplicación Blazor

Seleccione el .NET Framework deseado (utilizaremos .NET 6.0 en este tutorial)como se muestra en la siguiente captura de pantalla:

Crear un archivo PDF con Blazor Tutorial, Figura 3: Creación de un nuevo proyecto en Visual Studio con .NET 6.0 Framework

Creación de un nuevo proyecto en Visual Studio con el marco .NET 6.0

Microsoft Visual Studio generará ahora la estructura para esta aplicación Blazor.

A continuación, añada la biblioteca IronPDF a este nuevo proyecto.

3. Instalar la biblioteca IronPDF

La biblioteca IronPDF puede descargarse e instalarse de cuatro maneras:

  • Uso del gestor de paquetes NuGet de Visual Studio
  • Uso de la línea de comandos de Visual Studio
  • Descarga directa desde el sitio web de NuGet
  • Descarga directa desde el sitio web de IronPDF

3.1 Uso del gestor de paquetes NuGet de Visual Studio

Visual Studio proporciona el gestor de paquetes NuGet para ayudar a instalar bibliotecas directamente en los proyectos. La siguiente captura de pantalla muestra cómo abrir el Gestor de paquetes NuGet.

Crear un archivo PDF con Blazor Tutorial, Figura 4: Acceso al gestor de paquetes NuGet de Visual Studio

Acceso al gestor de paquetes NuGet de Visual Studio

Utilice el campo de búsqueda de la pestaña Examinar para buscar "IronPDF", como se muestra en la siguiente captura de pantalla:

Crear un archivo PDF con Blazor Tutorial, Figura 5: Búsqueda de la biblioteca IronPDF en la interfaz gráfica de usuario del gestor de paquetes NuGet

Búsqueda de la biblioteca IronPDF en la interfaz gráfica de usuario del gestor de paquetes NuGet.

En la imagen anterior, se muestra la lista de los resultados de búsqueda relacionados. Seleccione las opciones necesarias para instalar el paquete en su proyecto.

3.2 Uso de la línea de comandos de Visual Studio

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

Introduzca la siguiente línea en la pestaña Package Manager Console:

Install-Package IronPdf

El paquete se descargará e instalará en el proyecto actual.

Crear un archivo PDF con Blazor Tutorial, Figura 6: Instalación de la biblioteca IronPDF mediante la consola del gestor de paquetes NuGet

Instalación de la biblioteca IronPDF mediante la consola del gestor de paquetes NuGet

3.3 Descarga directa desde el sitio web de NuGet

La tercera forma de instalar la biblioteca IronPDF es descargar el paquete NuGet directamente del sitio web.

Vaya a https://www.nuget.org/packages/IronPdf/

  • Haga clic en la opción "Descargar paquete" del menú de la derecha.
  • Abra el paquete descargado en su sistema de archivos. Se instalará automáticamente.
  • Vuelva a cargar la solución y empiece a utilizarla en su proyecto.

3.4 Descarga directa desde el sitio web de IronPDF

Haga clic en este enlace del sitio web de IronPDF para descargar el último paquete directamente.

Después de descargarlo, siga estos pasos para añadir el paquete a su proyecto:

  • Haga clic con el botón derecho del ratón en el proyecto de la ventana de la solución.
  • Seleccione la opción "Referencia" y navegue hasta la ubicación de la biblioteca que descargó anteriormente.
  • Haga clic en Aceptar para añadir la biblioteca como referencia.

4. Crear documentos PDF en la aplicación Blazor Server

La aplicación Blazor de este tutorial utilizará IronPDF para obtener el contenido HTML de una página web por su URL y convertirlo en un documento PDF.

Introduzca el siguiente código fuente en el archivo .razor contenido en el proyecto.

@using IronPdf;

public void ExportData()
{
    try
    {
        string fileName = "Demo.pdf";
        var renderer = new IronPdf.ChromePdfRenderer();
        var pdf = renderer.RenderUrlAsPdf("https://localhost:7018/fetchdata");
        JSRuntime.InvokeVoidAsync("saveAsFile", fileName, Convert.ToBase64String(pdf.Stream.ToArray()));
    }
    catch (Exception ex)
    {

    }
}
@using IronPdf;

public void ExportData()
{
    try
    {
        string fileName = "Demo.pdf";
        var renderer = new IronPdf.ChromePdfRenderer();
        var pdf = renderer.RenderUrlAsPdf("https://localhost:7018/fetchdata");
        JSRuntime.InvokeVoidAsync("saveAsFile", fileName, Convert.ToBase64String(pdf.Stream.ToArray()));
    }
    catch (Exception ex)
    {

    }
}
Private IronPdf As [using]

Public Sub ExportData()
	Try
		Dim fileName As String = "Demo.pdf"
		Dim renderer = New IronPdf.ChromePdfRenderer()
		Dim pdf = renderer.RenderUrlAsPdf("https://localhost:7018/fetchdata")
		JSRuntime.InvokeVoidAsync("saveAsFile", fileName, Convert.ToBase64String(pdf.Stream.ToArray()))
	Catch ex As Exception

	End Try
End Sub
VB   C#

El fragmento de código anterior utiliza dos métodos para generar documentos PDF a partir de HTML. El primero es IronPDF RenderUrlAsPdf que descarga el contenido HTML de una URL determinada y lo convierte a formato PDF.

El segundo método es el método estático JSRuntime.InvokeVoidAsync, que activa el motor JavaScript del navegador para invocar una función JavaScript dentro del ámbito de la página web que guarda el contenido del PDF en un archivo del sistema de archivos del cliente.

Esta función JavaScript se incluye a continuación:

<script type="text/JavaScript">
    function saveAsFile(filename, bytesBase64) {
        if (navigator.msSaveBlob) {
            //Descargar documento en el navegador Edge
            var data = window.atob(bytesBase64);
            var bytes = new Uint8Array(data.length);
            for (var i = 0; i < data.length; i++) {
                bytes [i] = data.charCodeAt(i);
            }
            var blob = new Blob([bytes.buffer], { type: "application/octet-stream" });
            navigator.msSaveBlob(blob, filename);
            window.navigator.msSaveOrOpenBlob(blob );
        }
        else {
            var link = document.createElement('a');
            link.download = filename;
            link.href = "data:application/octet-stream;base64," + bytesBase64;
            document.body.appendChild(link); //  Necesario para Firefox
            link.click();
            document.body.removeChild(link);
        }
    }
</script>
<script type="text/JavaScript">
    function saveAsFile(filename, bytesBase64) {
        if (navigator.msSaveBlob) {
            //Descargar documento en el navegador Edge
            var data = window.atob(bytesBase64);
            var bytes = new Uint8Array(data.length);
            for (var i = 0; i < data.length; i++) {
                bytes [i] = data.charCodeAt(i);
            }
            var blob = new Blob([bytes.buffer], { type: "application/octet-stream" });
            navigator.msSaveBlob(blob, filename);
            window.navigator.msSaveOrOpenBlob(blob );
        }
        else {
            var link = document.createElement('a');
            link.download = filename;
            link.href = "data:application/octet-stream;base64," + bytesBase64;
            document.body.appendChild(link); //  Necesario para Firefox
            link.click();
            document.body.removeChild(link);
        }
    }
</script>
HTML

La función JavaScript anterior recibe los datos Base64 de Blazor y los convierte en un blob antes de guardarlos en la ubicación del lado del cliente.

Alternativamente, La Guardar como del método Renderizador de PDF cromado también puede utilizarse para guardar documentos PDF en el almacenamiento local del navegador.

5. Crear un documento PDF a partir de una cadena HTML

El siguiente fragmento de código muestra cómo convertir una cadena HTML en un documento.

var pdf = new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello world!!</h1>")
var pdf = new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello world!!</h1>")
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'var pdf = New IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello world!!</h1>")
VB   C#

El ejemplo anterior utiliza la función RenderHtmlAsPdf para transformar cualquier cadena HTML en contenido PDF. Además, se puede utilizar el método SaveAs en los procedimientos descritos anteriormente para guardar este contenido en el ordenador del cliente.

Crear un archivo PDF con el tutorial de Blazor, Figura 7: La aplicación de generación de PDF de Blazor creada en este tutorial

**La aplicación Blazor de generación de PDF creada en este tutorial.

La captura de pantalla anterior muestra la Aplicación Web que se ha desarrollado en este tutorial. Al hacer clic en el botón Descargar se activará el código C# para producir el contenido PDF y una función JavaScript para descargar el contenido PDF en el lado del cliente.

Conclusión

Este artículo muestra cómo desarrollar una aplicación web Blazor que utilice la biblioteca IronPDF PDF para generar archivos PDF a partir de páginas web.

Sin embargo, IronPDF no es de código abierto. clave de prueba gratuita le permite utilizarlo en producción sin marcas de agua.

< ANTERIOR
Tutorial de Blazor PDF Viewer
SIGUIENTE >
Crear un archivo PDF en .NET MAUI Usando IronPDF

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

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