Pruebas en un entorno real
Pruebe en producción sin marcas de agua.
Funciona donde lo necesites.
En la era digital, los PDF (Portable Document Formats) se han convertido en una necesidad cotidiana, crucial para almacenar y compartir información en un formato fiable y coherente. Ya sea para transformar propiedades de datos en un PDF con un formato impecable o para elaborar una factura profesional, los desarrolladores suelen recurrir a potentes bibliotecas cliente de C# como IronPDF y JSReport Studio locales en lugar de Phantom PDF para el desarrollo de servidores.
IronPDF ofrece el mejor rendimiento en la conversión de HTML a PDF en el .NET Framework, mientras que JSReport SDK ofrece soluciones dinámicas de generación de informes centradas en la flexibilidad y la personalización mediante el servidor local JSReport y el archivo config o de configuración. Ambas bibliotecas aportan soluciones únicas, que responden a las distintas necesidades de los desarrolladores en el campo de la generación y manipulación de PDF.
SDK de JSReport .NET es una solución avanzada de generación de informes para aplicaciones .NET, especialmente optimizada para entornos ASP.NET Core. Se distingue por permitir la transformación de las salidas de las vistas en diversos formatos, como PDF, Excel, DOCX y CSV, directamente desde HTML y JavaScript. Esta capacidad se facilita aprovechando motores ASP.NET MVC como Razor para la generación de informes utilizando un servidor de informes.
JSReport .NET proporciona un amplio conjunto de extensiones locales predeterminadas, como programación, versionado de plantillas, subinformes, gestión de usuarios, plantillas de importación/exportación y copias de seguridad, lo que aumenta su versatilidad y aplicabilidad en diversos escenarios empresariales. También es compatible con una amplia gama de API, incluidas las API REST, CLI o SDK, lo que permite generar informes prácticamente desde cualquier lugar.
JSReport SDK ofrece un paquete NuGet jsreport.AspNetCore específico para aplicaciones ASP.NET Core. Esto incluye filtros middleware capaces de transformar las salidas de las vistas MVC en los formatos deseados, utilizando las vistas como generadores HTML y el servidor JSReport como transformador de salida.
La configuración implica el uso de paquetes como jsreport.AspNetCore, jsreport.Local y jsreport.Binary. Estas clases de ayuda facilitan la conexión a una instancia local de JSReport o a una instancia remota a través de jsreport.Client.
Los desarrolladores pueden especificar fácilmente recetas JSReport para la transformación de la salida. Por ejemplo, utilizando la receta MiddlewareFilter y ChromePdf, un filtro ASP.NET captura el resultado de renderizado de una vista y lo convierte a formato PDF. Esta función es especialmente útil para las aplicaciones basadas en ASP.NET.
JSReport .NET se integra perfectamente con instancias remotas de JSReport. Esto es particularmente ventajoso en entornos Docker orquestados donde JSReport se ejecuta en un contenedor separado en lugar de un contenedor. Esta integración facilita la orquestación de aplicaciones JSReport y .NET Core mediante herramientas como Docker-compose.
El hook OnAfterRender permite manipular las cabeceras de respuesta y otros atributos. Este gancho también se puede utilizar para almacenar la salida en un archivo, ofreciendo flexibilidad en el manejo de la respuesta del proceso de generación de informes.
JSReport .NET permite especificar encabezados de PDF personalizados mediante vistas parciales. Estos encabezados se pueden mostrar en tiempo de ejecución junto con el contenido principal del PDF, lo que ofrece opciones de personalización adicionales para la generación de informes.
El framework permite generar informes a partir de HTML sin procesar, no sólo vistas MVC. Esta función permite una mayor flexibilidad en el proceso de generación de informes, permitiendo a los desarrolladores renderizar directamente el contenido HTML.
IronPDF es una útil biblioteca para aplicaciones .NET que facilita el trabajo con archivos PDF. Una de las principales cosas que hace es convertir HTML a PDFque es perfecto si necesita generar informes o facturas a partir de páginas web. Además, es bastante rápida tanto si trabajas en el lado del servidor como en el lado del cliente, lo que la convierte en una gran biblioteca tanto para proyectos empresariales como para uso personal.
IronPDF se adapta a muchos entornos .NET diferentes, como ASP.NET, MVC, Windows Forms y WPF. Se integra sin problemas tanto con .NET Core como con Framework. También funciona con Azure y otros servicios en la nube, lo que es una gran ventaja para el desarrollo de aplicaciones basadas en la nube.
IronPDF es perfecto para convertir HTML en documentos PDF. Maneja HTML, CSS, JavaScript e imágenes a la perfección, garantizando que su contenido web tenga el aspecto adecuado en el PDF final. La conversión mantiene el diseño y el estilo del HTML original.
La integración con ASP.NET es perfecta, lo que le permite convertir páginas ASPX en PDF sin necesidad de una gran cantidad de código. Es muy útil para crear PDF a partir de aplicaciones web existentes.
IronPDF le permite editar archivos PDF existentescomo añadir texto, imágenes y páginas o fusionar varios PDF. Las funciones de edición son fáciles de usar, por lo que no es necesario ser un experto en PDF para utilizarlas. También puede añadir anotaciones, archivos adjuntos, esquemas y marcadores a su PDF.
IronPDF permite rellenar y extraer datos de Formularios PDFque es clave para las aplicaciones que trabajan con formularios. IronPDF facilita enormemente todo el proceso de gestión de datos de formularios. También puede gestionar distintos tipos de formularios PDF, lo que aumenta su flexibilidad.
IronPDF incluye funciones de seguridad como la protección por contraseña y el establecimiento de permisos en los documentos PDF, que son cruciales para mantener a salvo la información confidencial. También dispone de funciones de cifrado y descifrado, lo que añade otra capa de seguridad para sus PDF.
Puede controlar en gran medida la representación de sus PDF, por ejemplo, configurando encabezados y pies de página personalizadosAjustes márgenes de páginay eligiendo partes HTML específicas para la conversión. Este nivel de personalización garantiza que sus PDF sean exactamente como usted desea.
IronPDF es compatible con Cumplimiento de PDF/A y firmas digitales. También tiene funciones de reconocimiento óptico de caracteres, lo que significa que puede convertir documentos e imágenes escaneados en archivos PDF que puedes buscar y editar. Estas funciones son ideales para proyectos más complejos.
La configuración de IronPDF es muy sencilla: no es necesario realizar instalaciones o dependencias adicionales. Es ligero, por lo que no reduce el rendimiento de la aplicación. Además, siempre se está actualizando para mantenerse al día con lo último en tecnología .NET, ofreciéndole una solución PDF que no se quedará anticuada.
Abra Visual Studio e inicie un nuevo proyecto haciendo clic en el botón "Crear un nuevo proyecto".
A continuación, elija 'Console App', ".NET Core App" o cualquier otra opción.
Tendrás que dar un nombre a tu proyecto. Busque el cuadro de texto para el nombre del proyecto y escriba el nombre que desee. Además, elija una ubicación para el proyecto seleccionando la ruta en la que desea guardarlo. Una vez introducidos estos datos, pulse el botón "Crear" para seguir adelante.
El siguiente paso es seleccionar el .NET Framework necesario para su proyecto. Esta elección depende de los requisitos y la compatibilidad de su proyecto. A continuación, pulse el botón Crear.
Para instalar IronPDF mediante el gestor de paquetes NuGet de Visual Studio, siga estos pasos:
Haga clic en el menú "Herramientas", elija "Gestor de paquetes NuGet" y, a continuación, seleccione "Gestionar paquetes NuGet para la solución".
Una vez que encuentre el paquete IronPDF, selecciónelo y haga clic en "Instalar".
Si prefiere utilizar la línea de comandos, puede instalar IronPDF en Visual Studio de la siguiente manera:
Install-Package IronPdf
Install-Package IronPdf
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package IronPdf
Pulse Intro para ejecutar el comando y espere a que finalice la instalación.
IronPDF también puede descargarse directamente del sitio web de NuGet:
Utilice la barra de búsqueda para encontrar el paquete IronPDF.
Descargue el archivo .nupkg y añádalo a su proyecto manualmente.
Para ejecutar JSReport mediante el gestor de paquetes NuGet de Visual Studio, ve al menú "Herramientas" y selecciona "Gestionar paquetes NuGet". Se abrirá la interfaz del Gestor de paquetes NuGet. En el gestor de paquetes NuGet, puede buscar jsreport.Local o jsreport.Binary, en función de los requisitos de su proyecto.
Estos son los principales paquetes para integrar JSReport en una aplicación .NET. Una vez localizado el paquete adecuado, haz clic en "Instalar" para añadirlo a tu proyecto. Este proceso descargará y referenciará automáticamente el paquete en su proyecto, dejándolo listo para su uso.
También puedes instalar JSReport mediante la consola del gestor de paquetes NuGet en Visual Studio. Para ello, abre la Consola del Gestor de Paquetes NuGet desde el menú 'Herramientas seleccionando 'Gestor de Paquetes NuGet' y luego 'Consola del Gestor de Paquetes'.
En la consola, debe ejecutar un comando específico para instalar el paquete JSReport. Si desea instalar el paquete jsreport.Local, utilice el comando Install-Package jsreport.Local. Para los paquetes jsreport.Binary, el comando sería Install-Package jsreport.Binary. La ejecución de estos comandos en la consola del gestor de paquetes descargará y añadirá el paquete JSReport correspondiente a su proyecto.
IronPDF es la mejor biblioteca para la conversión de HTML a PDF. Destaca por su facilidad de uso y su alto rendimiento, lo que la convierte en una de las mejores opciones entre los desarrolladores. Es compatible con funciones avanzadas como el renderizado de CSS, la ejecución de JavaScript y los encabezados y pies de página personalizados, lo que mejora aún más su capacidad para producir PDF de alta calidad a partir de fuentes HTML. IronPDF ofrece 3 formas de convertir HTML a PDF:
URL a PDF
Analicemos estas características una por una.
Esta función permite convertir contenido HTML directamente a partir de una cadena. Esto resulta especialmente útil cuando el contenido HTML se genera o modifica dinámicamente dentro de su aplicación. Puede pasar la cadena HTML a IronPDF, y éste la renderizará como PDF.
using IronPdf;
var renderer = new ChromePdfRenderer();
IronPdf.License.LicenseKey = "Your-License-Key";
string htmlString = @"
<html>
<head>
<title>Example HTML</title>
</head>
<body>
<h1>Hello, World!</h1>
<p>This is an HTML string converted to PDF using IronPDF.</p>
</body>
</html>";
// Convert HTML string to PDF
var pdfDocument = renderer.RenderHtmlAsPdf(htmlString);
pdfDocument.SaveAs("HtmlStringToPdf.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
IronPdf.License.LicenseKey = "Your-License-Key";
string htmlString = @"
<html>
<head>
<title>Example HTML</title>
</head>
<body>
<h1>Hello, World!</h1>
<p>This is an HTML string converted to PDF using IronPDF.</p>
</body>
</html>";
// Convert HTML string to PDF
var pdfDocument = renderer.RenderHtmlAsPdf(htmlString);
pdfDocument.SaveAs("HtmlStringToPdf.pdf");
Imports IronPdf
Private renderer = New ChromePdfRenderer()
IronPdf.License.LicenseKey = "Your-License-Key"
Dim htmlString As String = "
<html>
<head>
<title>Example HTML</title>
</head>
<body>
<h1>Hello, World!</h1>
<p>This is an HTML string converted to PDF using IronPDF.</p>
</body>
</html>"
' Convert HTML string to PDF
Dim pdfDocument = renderer.RenderHtmlAsPdf(htmlString)
pdfDocument.SaveAs("HtmlStringToPdf.pdf")
Este es el archivo PDF de salida:
Con este método, puede convertir un archivo HTML existente en un PDF. Esto resulta útil cuando se tienen archivos HTML estáticos que deben presentarse o distribuirse como PDF. Es necesario proporcionar la ruta al archivo HTML, y IronPDF se encarga de la conversión.
using IronPdf;
var renderer = new ChromePdfRenderer();
IronPdf.License.LicenseKey = "Your-License-Key";
var pdfDocument = renderer.RenderHtmlFileAsPdf("invoice.html");
pdfDocument.SaveAs("Invoice.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
IronPdf.License.LicenseKey = "Your-License-Key";
var pdfDocument = renderer.RenderHtmlFileAsPdf("invoice.html");
pdfDocument.SaveAs("Invoice.pdf");
Imports IronPdf
Private renderer = New ChromePdfRenderer()
IronPdf.License.LicenseKey = "Your-License-Key"
Dim pdfDocument = renderer.RenderHtmlFileAsPdf("invoice.html")
pdfDocument.SaveAs("Invoice.pdf")
Aquí está el archivo PDF de salida de una factura HTML:
1
Esta función permite convertir una página web completa en un PDF utilizando su URL. Es muy útil para capturar el estado actual de una página web, incluidos el estilo, las imágenes y otros recursos. IronPDF cargará la página web desde la URL indicada y la convertirá en un documento PDF, reproduciendo el diseño y el contenido lo más fielmente posible.
using IronPdf;
var renderer = new ChromePdfRenderer();
IronPdf.License.LicenseKey = "Your-License-Key";
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A2;
//https url
var pdfDocument = renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/");
pdfDocument.SaveAs("UrlToPdf.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
IronPdf.License.LicenseKey = "Your-License-Key";
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A2;
//https url
var pdfDocument = renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/");
pdfDocument.SaveAs("UrlToPdf.pdf");
Imports IronPdf
Private renderer = New ChromePdfRenderer()
IronPdf.License.LicenseKey = "Your-License-Key"
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A2
'https url
Dim pdfDocument = renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/")
pdfDocument.SaveAs("UrlToPdf.pdf")
Aquí está el PDF generado del sitio web de Microsoft .NET utilizando la lógica anterior.
El proceso de conversión de HTML a PDF en JSReport implica varios pasos, que a menudo incluyen la configuración de un servidor JSReport o el uso de su API en línea. Una implementación típica en C# podría ser la siguiente
using JsReport.AspNetCore;
using JsReport.Types;
using System.Threading.Tasks;
public async Task<IActionResult> GeneratePdf()
{
var report = new LocalReporting()
.UseBinary(JsReportBinary.GetBinary())
.AsUtility()
.Create();
var reportResult = await report.RenderAsync(new RenderRequest()
{
Template = new Template()
{
Content = "<html><body><h1>Example HTML</h1><p>This is converted to PDF using JSReport.</p></body></html>",
Engine = Engine.None,
Recipe = Recipe.ChromePdf
},
Options = new RenderOptions()
{
Debug = new DebugOptions() { Preview = true }
}
});
var stream = new MemoryStream();
reportResult.Content.CopyTo(stream);
stream.Position = 0;
return File(stream, "application/pdf", "Report.pdf");
}
using JsReport.AspNetCore;
using JsReport.Types;
using System.Threading.Tasks;
public async Task<IActionResult> GeneratePdf()
{
var report = new LocalReporting()
.UseBinary(JsReportBinary.GetBinary())
.AsUtility()
.Create();
var reportResult = await report.RenderAsync(new RenderRequest()
{
Template = new Template()
{
Content = "<html><body><h1>Example HTML</h1><p>This is converted to PDF using JSReport.</p></body></html>",
Engine = Engine.None,
Recipe = Recipe.ChromePdf
},
Options = new RenderOptions()
{
Debug = new DebugOptions() { Preview = true }
}
});
var stream = new MemoryStream();
reportResult.Content.CopyTo(stream);
stream.Position = 0;
return File(stream, "application/pdf", "Report.pdf");
}
Imports JsReport.AspNetCore
Imports JsReport.Types
Imports System.Threading.Tasks
Public Async Function GeneratePdf() As Task(Of IActionResult)
Dim report = (New LocalReporting()).UseBinary(JsReportBinary.GetBinary()).AsUtility().Create()
Dim reportResult = Await report.RenderAsync(New RenderRequest() With {
.Template = New Template() With {
.Content = "<html><body><h1>Example HTML</h1><p>This is converted to PDF using JSReport.</p></body></html>",
.Engine = Engine.None,
.Recipe = Recipe.ChromePdf
},
.Options = New RenderOptions() With {
.Debug = New DebugOptions() With {.Preview = True}
}
})
Dim stream = New MemoryStream()
reportResult.Content.CopyTo(stream)
stream.Position = 0
Return File(stream, "application/pdf", "Report.pdf")
End Function
También puede encontrar ejemplos de JSReport .NET en lo siguiente enlace. A continuación se muestra un ejemplo del informe de facturas en PDF.
IronPDF destaca por sus funciones avanzadas y su alto grado de personalización, que satisfacen diversas necesidades de manipulación de PDF. Entre las principales funciones avanzadas se incluyen:
Conformidad con PDF/A: Admite el formato PDF/A, esencial para el archivado a largo plazo y el cumplimiento de las normas del sector. Este cumplimiento es especialmente crucial para los sectores jurídico, financiero y gubernamental, donde la integridad de los documentos a lo largo del tiempo es primordial.
using IronPdf;
// Create a PdfDocument object or open any PDF File
PdfDocument pdf = PdfDocument.FromFile("wikipedia.pdf");
// Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3);
using IronPdf;
// Create a PdfDocument object or open any PDF File
PdfDocument pdf = PdfDocument.FromFile("wikipedia.pdf");
// Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3);
Imports IronPdf
' Create a PdfDocument object or open any PDF File
Private pdf As PdfDocument = PdfDocument.FromFile("wikipedia.pdf")
' Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3)
Edición, fusión y división de PDF: IronPDF permite editar PDF existentes, fusionar varios PDF en uno solo y dividir PDF en documentos independientes. Esta función es especialmente útil cuando hay que dividir documentos de gran tamaño para facilitar su distribución o cuando hay que combinar distintas secciones de varios documentos.
Funciones de seguridad: Incluye robustas características de seguridad como protección por contraseña, encriptación y la posibilidad de establecer permisos de usuario. IronPDF admite la encriptación de archivos PDF, lo que añade una capa adicional de seguridad y protege el contenido para que no pueda ser alterado ni copiado.
using IronPdf;
// Open a PDF File
var pdfDoc = PdfDocument.FromFile("invoice.pdf");
// The following code makes a PDF read only and will disallow copy & paste and printing
pdfDoc.SecuritySettings.RemovePasswordsAndEncryption();
pdfDoc.SecuritySettings.AllowUserAnnotations = false;
pdfDoc.SecuritySettings.AllowUserCopyPasteContent = false;
pdfDoc.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;
pdfDoc.SecuritySettings.MakePdfDocumentReadOnly("secret-key");
pdfDoc.SecuritySettings.AllowUserFormData = false;
// Change or set the document encryption password
pdfDoc.SecuritySettings.OwnerPassword = "passForOpen"; // password to edit the pdf
pdfDoc.SecuritySettings.UserPassword = "onlyForShare"; // password to open the pdf
pdfDoc.SaveAs("InvoiceProtected.pdf");
using IronPdf;
// Open a PDF File
var pdfDoc = PdfDocument.FromFile("invoice.pdf");
// The following code makes a PDF read only and will disallow copy & paste and printing
pdfDoc.SecuritySettings.RemovePasswordsAndEncryption();
pdfDoc.SecuritySettings.AllowUserAnnotations = false;
pdfDoc.SecuritySettings.AllowUserCopyPasteContent = false;
pdfDoc.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;
pdfDoc.SecuritySettings.MakePdfDocumentReadOnly("secret-key");
pdfDoc.SecuritySettings.AllowUserFormData = false;
// Change or set the document encryption password
pdfDoc.SecuritySettings.OwnerPassword = "passForOpen"; // password to edit the pdf
pdfDoc.SecuritySettings.UserPassword = "onlyForShare"; // password to open the pdf
pdfDoc.SaveAs("InvoiceProtected.pdf");
Imports IronPdf
' Open a PDF File
Private pdfDoc = PdfDocument.FromFile("invoice.pdf")
' The following code makes a PDF read only and will disallow copy & paste and printing
pdfDoc.SecuritySettings.RemovePasswordsAndEncryption()
pdfDoc.SecuritySettings.AllowUserAnnotations = False
pdfDoc.SecuritySettings.AllowUserCopyPasteContent = False
pdfDoc.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights
pdfDoc.SecuritySettings.MakePdfDocumentReadOnly("secret-key")
pdfDoc.SecuritySettings.AllowUserFormData = False
' Change or set the document encryption password
pdfDoc.SecuritySettings.OwnerPassword = "passForOpen" ' password to edit the pdf
pdfDoc.SecuritySettings.UserPassword = "onlyForShare" ' password to open the pdf
pdfDoc.SaveAs("InvoiceProtected.pdf")
Control de encabezados y pies de página: Los desarrolladores pueden añadir fácilmente encabezados y pies de página personalizados a sus documentos PDF, una función esencial para informes, facturas y otros documentos empresariales de aspecto profesional. Esto incluye la posibilidad de añadir números de página, fechas y texto personalizado.
Conversión de PDF a imágenes: IronPDF permite convertir páginas PDF en imágenes. Esta función es especialmente útil cuando se necesita mostrar contenido PDF como imágenes en aplicaciones web o para generar miniaturas.
using IronPdf;
using IronSoftware.Drawing;
var pdf = PdfDocument.FromFile("Example.pdf");
// Extract all pages to a folder as image files
pdf.RasterizeToImageFiles(@"C:\image\folder\*.png");
// Dimensions and page ranges may be specified
pdf.RasterizeToImageFiles(@"C:\image\folder\example_pdf_image_*.jpg", 100, 80);
// Extract all pages as AnyBitmap objects
AnyBitmap [] pdfBitmaps = pdf.ToBitmap();
using IronPdf;
using IronSoftware.Drawing;
var pdf = PdfDocument.FromFile("Example.pdf");
// Extract all pages to a folder as image files
pdf.RasterizeToImageFiles(@"C:\image\folder\*.png");
// Dimensions and page ranges may be specified
pdf.RasterizeToImageFiles(@"C:\image\folder\example_pdf_image_*.jpg", 100, 80);
// Extract all pages as AnyBitmap objects
AnyBitmap [] pdfBitmaps = pdf.ToBitmap();
Imports IronPdf
Imports IronSoftware.Drawing
Private pdf = PdfDocument.FromFile("Example.pdf")
' Extract all pages to a folder as image files
pdf.RasterizeToImageFiles("C:\image\folder\*.png")
' Dimensions and page ranges may be specified
pdf.RasterizeToImageFiles("C:\image\folder\example_pdf_image_*.jpg", 100, 80)
' Extract all pages as AnyBitmap objects
Dim pdfBitmaps() As AnyBitmap = pdf.ToBitmap()
JSReport .NET es famoso por sus funciones avanzadas y su extensibilidad, que lo convierten en una herramienta versátil para la generación de informes. Sus principales características son:
Generación dinámica de informes: Admite varios motores de plantillas, incluidos Handlebars y EJS, lo que facilita diseños de informes intrincados y flexibles. Esta compatibilidad multimotor permite una amplia gama de posibilidades de diseño, adaptándose a diferentes requisitos y complejidades en la creación de informes.
var report = new LocalReporting()
.UseBinary(JsReportBinary.GetBinary())
.RunInDirectory(Path.Combine(Directory.GetCurrentDirectory(), "jsreport"))
.KillRunningJsReportProcesses()
.Configure(cfg => cfg.AllowLocalFilesAccess().FileSystemStore().BaseUrlAsWorkingDirectory())
.AsUtility()
.Create();
var reportResult = await report.RenderAsync(new RenderRequest()
{
Template = new Template()
{
Content = "{{{message}}}",
Engine = Engine.Handlebars,
Recipe = Recipe.ChromePdf
},
Data = new
{
message = "PDF Generation with JSReport .NET"
}
});
var report = new LocalReporting()
.UseBinary(JsReportBinary.GetBinary())
.RunInDirectory(Path.Combine(Directory.GetCurrentDirectory(), "jsreport"))
.KillRunningJsReportProcesses()
.Configure(cfg => cfg.AllowLocalFilesAccess().FileSystemStore().BaseUrlAsWorkingDirectory())
.AsUtility()
.Create();
var reportResult = await report.RenderAsync(new RenderRequest()
{
Template = new Template()
{
Content = "{{{message}}}",
Engine = Engine.Handlebars,
Recipe = Recipe.ChromePdf
},
Data = new
{
message = "PDF Generation with JSReport .NET"
}
});
Dim report = (New LocalReporting()).UseBinary(JsReportBinary.GetBinary()).RunInDirectory(Path.Combine(Directory.GetCurrentDirectory(), "jsreport")).KillRunningJsReportProcesses().Configure(Function(cfg) cfg.AllowLocalFilesAccess().FileSystemStore().BaseUrlAsWorkingDirectory()).AsUtility().Create()
Dim reportResult = Await report.RenderAsync(New RenderRequest() With {
.Template = New Template() With {
.Content = "{{{message}}}",
.Engine = Engine.Handlebars,
.Recipe = Recipe.ChromePdf
},
.Data = New With {Key .message = "PDF Generation with JSReport .NET"}
})
Motores de plantillas: JSReport .NET ofrece programación y automatización para la generación de informes, ideal para necesidades de informes regulares como resúmenes diarios o mensuales. Esta funcionalidad garantiza la entrega puntual de los informes y puede integrarse con los flujos de trabajo empresariales para la elaboración de informes activados por eventos.
Extensibilidad con scripts personalizados: JSReport C# permite la ampliación de sus capacidades a través de scripts personalizados, mejorando funcionalidades como el tratamiento personalizado de datos o el formateo especializado. Esta extensibilidad es crucial para crear informes según requisitos específicos de lógica empresarial y manipulación de datos.
La documentación de IronPDF es completa y fácil de usar, y está dirigida tanto a principiantes como a desarrolladores experimentados. Incluye guías detalladas, referencias a la API y una gran cantidad de ejemplos de código, lo que facilita a los desarrolladores la comprensión e implementación de las funciones de la biblioteca en múltiples lenguajes, como C# y Node.
La documentación está bien estructurada y se actualiza periódicamente, reflejando las últimas funciones y las mejores prácticas. Además, el sitio web de IronPDF ofrece guías de inicio rápido y preguntas frecuentes, que resultan especialmente útiles para quienes se inician en la manipulación de PDF en un entorno .NET.
IronPDF también dispone de una zona de juegos en línea en la que puede probar la funcionalidad de IronPDF en línea sin necesidad de descargar su código. Explórelo utilizando lo siguiente enlace.
IronPDF ofrece varias opciones de asistencia, incluido un equipo de asistencia dedicado a la gestión de consultas y problemas técnicos. Proporcionan asistencia por correo electrónico y tienen una presencia activa en los foros de desarrolladores, ofreciendo soluciones y consejos. También puede ponerse en contacto con el agente de Live Support mediante la opción Live Support del sitio web.
JSReport .NET se enorgullece de su extensa y bien mantenida documentación. La documentación abarca una amplia gama de temas, desde la configuración básica hasta escenarios de uso avanzados, con fragmentos de código y ejemplos de implementación. Está organizada de forma lógica, lo que facilita la navegación y la búsqueda de información relevante. Los recursos en línea también incluyen una completa referencia de la API, que garantiza a los desarrolladores el acceso a información detallada sobre las capacidades de la herramienta.
En términos de soporte, JSReport .NET ofrece una variedad de opciones. Cuentan con un equipo de asistencia especializado con el que se puede contactar por correo electrónico, y mantienen una presencia activa en GitHub, proporcionando una plataforma para informar de problemas y solicitudes de funciones.
IronPDF ofrece tres distintas opciones de preciospara diferentes escalas de uso y necesidades presupuestarias:
Edición Lite: Con un precio de $749, se trata de una tarifa única para la implantación en la nube. Está diseñado para proyectos pequeños o equipos que se inician en el procesamiento de PDF.
Edición Professional: Con un precio de 1.499 dólares, también de pago único por uso en la nube, esta edición es adecuada para desarrolladores profesionales que requieren funciones y capacidades más avanzadas.
Edición ilimitada: El paquete más completo, con un precio de 2.999 dólares, es una tarifa única para la implantación en la nube. Es ideal para su uso en grandes empresas, ya que ofrece amplias funciones y no tiene limitaciones de uso.
JSReport .NET ofrece opciones de licencia flexiblesincluyendo licencias por suscripción y perpetuas:
Licencia gratuita: Esto ofrece una instancia con todas las funciones limitada a un máximo de 5 plantillas de informes. No requiere clave de licencia y es adecuado para pequeños proyectos o fines de evaluación.
Suscripción Enterprise: Con un precio de 395 $ al año, este plan proporciona una única instancia de JSReport con todas las funciones, sin limitaciones e incluye actualizaciones. Es ideal para empresas individuales que necesitan una solución de informes sólida.
Suscripción a escala empresarial: A 1.295 dólares al año, este plan es el mejor para despliegues a gran escala, ya que ofrece una única clave de licencia válida para un número infinito de instancias. Este plan incluye actualizaciones y no está sujeto a derechos de autor, por lo que es adecuado para organizaciones que ejecutan varias instancias o que lo implantan como parte de otro producto a varios clientes.
En conclusión, aunque tanto IronPDF como JSReport .NET son valiosos en sus respectivos campos, IronPDF tiene una ligera ventaja debido a sus completas capacidades de manipulación de PDF. Destaca en áreas como el cumplimiento de PDF/A, la edición avanzada y las funciones de seguridad, lo que la convierte en una herramienta más versátil para el manejo detallado de PDF en entornos .NET. JSReport .NET, con sus puntos fuertes en generación dinámica de informes y plantillas, es muy eficaz para tareas centradas en informes. Sin embargo, para la mayoría de los escenarios que requieren un procesamiento y manipulación de PDF detallados y variados, IronPDF se perfila como la opción más ventajosa.
IronPDF ofrece una licencia gratuita para desarrolladores y prueba gratuita. Iron Software ofrece un paquete completo conocido como Iron Suite. Esta suite, que incluye IronBarcode, IronXL, IronQR, IronOCR, IronPDFy IronWebscraperse ofrece al precio de 2 programas, lo que añade un valor significativo para los desarrolladores que buscan una amplia gama de funcionalidades.
Por último, la elección entre uno y otro dependería de las necesidades específicas y del entorno del proyecto o desarrollador.
9 productos API .NET para sus documentos de oficina