Pruebe en producción sin marcas de agua.
Funciona donde lo necesite.
Obtén 30 días de producto totalmente funcional.
Ténlo en funcionamiento en minutos.
Acceso completo a nuestro equipo de asistencia técnica durante la prueba del producto
Cuando trabajas con PDFs, ¿quieres usar la mejor herramienta que se adapte a las necesidades de tu proyecto, verdad? Pero con tantas bibliotecas de PDF diferentes disponibles, puede ser difícil decidir cuál es la mejor para ti. Hoy vamos a examinar más de cerca dos bibliotecas PDF destacadas; IronPDF y NReco.PdfGenerator.
Compararemos sus características, compatibilidad y rendimiento general para ayudarte a tomar una decisión informada sobre qué biblioteca podría ser la más adecuada para ti.
IronPDF es una librería completa de .NET que sobresale en la conversión de HTML a PDF y un conjunto extenso de características para trabajar con archivos PDF. IronPDF es compatible con los estándares web modernos, incluidos HTML5, CSS3 y JavaScript, asegurando una generación de PDF de alta fidelidad. También está diseñado para ser fácil de usar, ofreciendo una API intuitiva que se integra perfectamente con aplicaciones .NET.
NReco.PdfGenerator for .NET es una biblioteca poderosa centrada en la conversión de HTML a PDF. Se basa en la herramienta de línea de comandos WkHtmlToPdf y utiliza el motor de renderizado Qt WebKit para crear documentos PDF a partir de contenido HTML. Esta biblioteca es conocida por su facilidad de uso y rápida integración en proyectos .NET, requiriendo solo una ensambladura .NET que ya incluye los binarios de WkHtmlToPdf. Esto lo convierte en una opción popular para los desarrolladores que necesitan capacidades fiables de generación de PDF.
IronPDF se destaca por su amplia compatibilidad multiplataforma. Admite una amplia gama de entornos dentro del framework .NET, garantizando un funcionamiento sin problemas en diferentes plataformas. A continuación se muestra un resumen de la compatibilidad de la plataforma de IronPDF:
Versiones de .NET:
Totalmente escrito en y compatible con C#, VB.NET y F#
.NET Core (8, 7, 6, 5 y 3.1+)
Sistemas operativos y procesadores: Soporta varios sistemas operativos y procesadores diferentes, incluyendo Windows, Mac, Linux, x64, x86, ARM
Para obtener más detalles sobre la compatibilidad de IronPDF, visite la Página de Características de IronPDF.
Versiones de .NET:
.NET Standard 2.0+
Integración: Se integra sin problemas con ASP.NET y aplicaciones MVC.
Para obtener una lista completa de características de IronPDF, visita Características de IronPDF.
Ahora, veamos más de cerca algunos casos de uso comunes al trabajar con documentos PDF, y cómo estas dos bibliotecas los manejan.
Ejemplo de IronPDF:
using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file or Stream
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: images, CSS and JavaScript.
// An optional BasePath 'c:\site\assets\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"c:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file or Stream
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: images, CSS and JavaScript.
// An optional BasePath 'c:\site\assets\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"c:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
Imports IronPdf
' Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = True
' Instantiate Renderer
Dim renderer = New ChromePdfRenderer()
' Create a PDF from a HTML string using C#
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")
' Export to a file or Stream
pdf.SaveAs("output.pdf")
' Advanced Example with HTML Assets
' Load external html assets: images, CSS and JavaScript.
' An optional BasePath 'c:\site\assets\' is set as the file location to load assets from
Dim myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "c:\site\assets\")
myAdvancedPdf.SaveAs("html-with-assets.pdf")
Ejemplo de NReco.PdfGenerator:
using system;
using NReco.PdfGenerator;
var htmlContent = String.Format("<body>Hello world: {0}</body>",
DateTime.Now);
var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter();
var pdfBytes = htmlToPdf.GeneratePdf(htmlContent)
using system;
using NReco.PdfGenerator;
var htmlContent = String.Format("<body>Hello world: {0}</body>",
DateTime.Now);
var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter();
var pdfBytes = htmlToPdf.GeneratePdf(htmlContent)
Imports system
Imports NReco.PdfGenerator
Private htmlContent = String.Format("<body>Hello world: {0}</body>", DateTime.Now)
Private htmlToPdf = New NReco.PdfGenerator.HtmlToPdfConverter()
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'var pdfBytes = htmlToPdf.GeneratePdf(htmlContent)
IronPDF proporciona un renderizado de alta fidelidad gracias a su compatibilidad con los estándares web modernos. Al usar IronPDF para la conversión de HTML a PDF, podrá crear PDFs de alta precisión a partir de documentos HTML, páginas web y más. NReco.PdfGenerator utiliza WkHtmlToPdf, que también ofrece renderizado confiable al trabajar con cualquier plantilla HTML o página web, pero podría no igualar la precisión de las capacidades de renderizado de IronPDF.
Para obtener más ejemplos de cómo usar IronPDF para la conversión de HTML a PDF, visite IronPDF HTML to PDF.
Ejemplo de IronPDF:
using IronPdf;
using System;
//Open an Encrypted File, alternatively create a new PDF from Html
var pdf = PdfDocument.FromFile("encrypted.pdf", "password");
//Edit file metadata
pdf.MetaData.Author = "Satoshi Nakamoto";
pdf.MetaData.Keywords = "SEO, Friendly";
pdf.MetaData.ModifiedDate = DateTime.Now;
//Edit file security settings
//The following code makes a PDF read only and will disallow copy & paste and printing
pdf.SecuritySettings.RemovePasswordsAndEncryption();
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key");
pdf.SecuritySettings.AllowUserAnnotations = false;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserFormData = false;
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;
// change or set the document encryption password
pdf.Password = "my-password";
pdf.SaveAs("secured.pdf");
using IronPdf;
using System;
//Open an Encrypted File, alternatively create a new PDF from Html
var pdf = PdfDocument.FromFile("encrypted.pdf", "password");
//Edit file metadata
pdf.MetaData.Author = "Satoshi Nakamoto";
pdf.MetaData.Keywords = "SEO, Friendly";
pdf.MetaData.ModifiedDate = DateTime.Now;
//Edit file security settings
//The following code makes a PDF read only and will disallow copy & paste and printing
pdf.SecuritySettings.RemovePasswordsAndEncryption();
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key");
pdf.SecuritySettings.AllowUserAnnotations = false;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserFormData = false;
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;
// change or set the document encryption password
pdf.Password = "my-password";
pdf.SaveAs("secured.pdf");
Imports IronPdf
Imports System
'Open an Encrypted File, alternatively create a new PDF from Html
Private pdf = PdfDocument.FromFile("encrypted.pdf", "password")
'Edit file metadata
pdf.MetaData.Author = "Satoshi Nakamoto"
pdf.MetaData.Keywords = "SEO, Friendly"
pdf.MetaData.ModifiedDate = DateTime.Now
'Edit file security settings
'The following code makes a PDF read only and will disallow copy & paste and printing
pdf.SecuritySettings.RemovePasswordsAndEncryption()
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key")
pdf.SecuritySettings.AllowUserAnnotations = False
pdf.SecuritySettings.AllowUserCopyPasteContent = False
pdf.SecuritySettings.AllowUserFormData = False
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights
' change or set the document encryption password
pdf.Password = "my-password"
pdf.SaveAs("secured.pdf")
Ejemplo de NReco.PdfGenerator: NReco.PdfGenerator no admite encriptación de PDF de forma nativa, ya que el enfoque de esta biblioteca es principalmente el manejo de la conversión de HTML a PDF.
IronPDF ofrece una herramienta sencilla, pero poderosa, para encriptar PDFs. Con IronPDF, tendrás control total sobre todo el proceso, incluso al configurar las opciones de seguridad. NReco.PdfGenerator, sin embargo, carece de características de cifrado nativas, por lo que si deseas cifrar tu archivo PDF después de usar NReco.PdfGenerator para convertirlo, necesitarás instalar más bibliotecas que puedan manejar el cifrado de PDF.
Para obtener más ejemplos de cifrado, visite la guía de cómo hacerlo de IronPDF para este tema.
Ejemplo de IronPDF:
using IronPdf;
PdfDocument pdf = PdfDocument.FromFile("novel.pdf");
// Redact 'are' phrase from all pages
pdf.RedactTextOnAllPages("are");
pdf.SaveAs("redacted.pdf");
using IronPdf;
PdfDocument pdf = PdfDocument.FromFile("novel.pdf");
// Redact 'are' phrase from all pages
pdf.RedactTextOnAllPages("are");
pdf.SaveAs("redacted.pdf");
Imports IronPdf
Private pdf As PdfDocument = PdfDocument.FromFile("novel.pdf")
' Redact 'are' phrase from all pages
pdf.RedactTextOnAllPages("are")
pdf.SaveAs("redacted.pdf")
Ejemplo de NReco.PdfGenerator: NReco.PdfGenerator no soporta nativamente la redacción de texto.
Requiriendo solo unas pocas líneas de código, IronPDF te ofrece una herramienta de redacción concisa y fácil de usar. Dado lo sencillo y breve que es implementarlo, puedes estar seguro de que al utilizar la función de redacción de IronPDF, podrás aumentar la eficiencia de tu lugar de trabajo desde el inicio. NReco.PdfGenerator, por otro lado, requeriría una biblioteca externa adicional para manejar el proceso de redacción, ya que no tiene soporte nativo para la redacción de PDF.
Para más ejemplos de redacción, visita la guía de cómo hacer de IronPDF sobre este tema.
Ejemplo de IronPDF:
using IronPdf;
using IronPdf.Signing;
using System.Security.Cryptography.X509Certificates;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>foo</h1>");
// Create X509Certificate2 object with X509KeyStorageFlags set to Exportable
X509Certificate2 cert = new X509Certificate2("IronSoftware.pfx", "123456", X509KeyStorageFlags.Exportable);
// Create PdfSignature object
var sig = new PdfSignature(cert);
// Sign PDF document
pdf.Sign(sig);
pdf.SaveAs("signed.pdf");
using IronPdf;
using IronPdf.Signing;
using System.Security.Cryptography.X509Certificates;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>foo</h1>");
// Create X509Certificate2 object with X509KeyStorageFlags set to Exportable
X509Certificate2 cert = new X509Certificate2("IronSoftware.pfx", "123456", X509KeyStorageFlags.Exportable);
// Create PdfSignature object
var sig = new PdfSignature(cert);
// Sign PDF document
pdf.Sign(sig);
pdf.SaveAs("signed.pdf");
Imports IronPdf
Imports IronPdf.Signing
Imports System.Security.Cryptography.X509Certificates
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>foo</h1>")
' Create X509Certificate2 object with X509KeyStorageFlags set to Exportable
Private cert As New X509Certificate2("IronSoftware.pfx", "123456", X509KeyStorageFlags.Exportable)
' Create PdfSignature object
Private sig = New PdfSignature(cert)
' Sign PDF document
pdf.Sign(sig)
pdf.SaveAs("signed.pdf")
Ejemplo de NReco.PdfGenerator: NReco.PdfGenerator no admite nativamente firmas digitales.
La función de firma digital de IronPDF le proporciona una manera fácil de automatizar la forma en que firma los PDF. Su API sencilla le ofrece control total sobre el proceso de firma, mientras que su facilidad de implementación significa menos trabajo para usted si se encuentra firmando PDFs con regularidad.
NReco.PdfGenerator, lamentablemente, no ofrece soporte para firmar digitalmente PDFs, pero puedes utilizar bibliotecas de terceros como iTextSharp para hacerlo.
Para obtener más ejemplos de firma, visite la guía How-To de IronPDF sobre este tema.
Ejemplo de IronPDF:
using IronPdf;
// Stamps a Watermark onto a new or existing PDF
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);
pdf.SaveAs(@"C:\Path\To\Watermarked.pdf");
using IronPdf;
// Stamps a Watermark onto a new or existing PDF
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);
pdf.SaveAs(@"C:\Path\To\Watermarked.pdf");
Imports IronPdf
' Stamps a Watermark onto a new or existing PDF
Private renderer = New ChromePdfRenderer()
Private pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf")
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center)
pdf.SaveAs("C:\Path\To\Watermarked.pdf")
Ejemplo de NReco.PdfGenerator: NReco.PdfGenerator no soporta de manera nativa la inclusión de marcas de agua.
¿Estás familiarizado con HTML y CSS? Porque, si es así, puedes aprovechar el uso de HTML/CSS de IronPDF en su herramienta de marca de agua para tener un control total sobre todo el proceso. Si no, los aspectos intuitivos y fáciles de aprender del control de marcas de agua te harán sentir como un profesional en poco tiempo.
Si estás utilizando NReco.PdfGenerator y deseas agregar una marca de agua a tus archivos PDF recién convertidos, necesitarás instalar una biblioteca externa, como PDFSharp.
Para más ejemplos de marcas de agua, visite la guía de IronPDF How-To sobre este tema.
Ejemplo de IronPDF:
using IronPdf;
using IronPdf.Editing;
using System;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");
// Create text stamper
TextStamper textStamper = new TextStamper()
{
Text = "Text Stamper!",
FontFamily = "Bungee Spice",
UseGoogleFont = true,
FontSize = 30,
IsBold = true,
IsItalic = true,
VerticalAlignment = VerticalAlignment.Top,
};
// Stamp the text stamper
pdf.ApplyStamp(textStamper);
pdf.SaveAs("stampText.pdf");
using IronPdf;
using IronPdf.Editing;
using System;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");
// Create text stamper
TextStamper textStamper = new TextStamper()
{
Text = "Text Stamper!",
FontFamily = "Bungee Spice",
UseGoogleFont = true,
FontSize = 30,
IsBold = true,
IsItalic = true,
VerticalAlignment = VerticalAlignment.Top,
};
// Stamp the text stamper
pdf.ApplyStamp(textStamper);
pdf.SaveAs("stampText.pdf");
Imports IronPdf
Imports IronPdf.Editing
Imports System
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>")
' Create text stamper
Private textStamper As New TextStamper() With {
.Text = "Text Stamper!",
.FontFamily = "Bungee Spice",
.UseGoogleFont = True,
.FontSize = 30,
.IsBold = True,
.IsItalic = True,
.VerticalAlignment = VerticalAlignment.Top
}
' Stamp the text stamper
pdf.ApplyStamp(textStamper)
pdf.SaveAs("stampText.pdf")
using IronPdf;
using IronPdf.Editing;
using System;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");
// Create image stamper
ImageStamper imageStamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg"))
{
VerticalAlignment = VerticalAlignment.Top,
};
// Stamp the image stamper
pdf.ApplyStamp(imageStamper, 0);
pdf.SaveAs("stampImage.pdf");
using IronPdf;
using IronPdf.Editing;
using System;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");
// Create image stamper
ImageStamper imageStamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg"))
{
VerticalAlignment = VerticalAlignment.Top,
};
// Stamp the image stamper
pdf.ApplyStamp(imageStamper, 0);
pdf.SaveAs("stampImage.pdf");
Imports IronPdf
Imports IronPdf.Editing
Imports System
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>")
' Create image stamper
Private imageStamper As New ImageStamper(New Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg")) With {.VerticalAlignment = VerticalAlignment.Top}
' Stamp the image stamper
pdf.ApplyStamp(imageStamper, 0)
pdf.SaveAs("stampImage.pdf")
Ejemplo de NReco.PdfGenerator: NReco.PdfGenerator no admite de forma nativa el estampado HTML.
IronPDF le ofrece robustas herramientas de estampado de texto e imagen, con un enfoque que se asemeja estrechamente a HTML y CSS, tendrá control total sobre el proceso de estampado. Mientras que NReco.PdfGenerator, por otro lado, requiere una biblioteca externa como iTextSharp o PDFSharp para estampar texto e imágenes en sus documentos PDF recién convertidos.
Para obtener más ejemplos de estampado, visite la guía de IronPDF How-To sobre este tema.
Ejemplo de IronPDF:
using IronPdf;
// Instantiate Renderer
DocxToPdfRenderer renderer = new DocxToPdfRenderer();
// Render from DOCX file
PdfDocument pdf = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx");
// Save the PDF
pdf.SaveAs("pdfFromDocx.pdf");
using IronPdf;
// Instantiate Renderer
DocxToPdfRenderer renderer = new DocxToPdfRenderer();
// Render from DOCX file
PdfDocument pdf = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx");
// Save the PDF
pdf.SaveAs("pdfFromDocx.pdf");
Imports IronPdf
' Instantiate Renderer
Private renderer As New DocxToPdfRenderer()
' Render from DOCX file
Private pdf As PdfDocument = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx")
' Save the PDF
pdf.SaveAs("pdfFromDocx.pdf")
Ejemplo de NReco.PdfGenerator: NReco.PdfGenerator no soporta de manera nativa la conversión de DOCX a PDF.
Usando IronPDF, puedes convertir tus archivos DOCX a formato PDF en solo unas pocas líneas de código. La implementación simplista de esta herramienta garantiza un espacio de trabajo eficiente, sin perder calidad en el archivo PDF resultante. Con NReco.PdfGenerator, no podrá convertir DOCX a PDF, ya que el enfoque principal de la biblioteca es la conversión de HTML a PDF. Entonces, necesitarás una biblioteca adicional como Apsose.Words en tu espacio de trabajo para manejar esta conversión.
Para obtener más ejemplos de DOCX a PDF, visite la guía Cómo hacerlo con IronPDF sobre este tema.
IronPDF tiene diferentes niveles y características adicionales para la compra de una licencia. Los desarrolladores también pueden comprar Iron Suite, que les da acceso a todos los productos de Iron Software al precio de dos. Si no está listo para comprar una licencia, IronPDF ofrece una prueba gratuita que dura 30 días.
Iron Suite: Por $1,498, obtienes acceso a todos los productos de Iron Software, incluyendo IronPDF, IronOCR, IronWord, IronXL, IronBarcode, IronQR, IronZIP, IronPrint y IronWebScraper.
IronPDF destaca por su amplia documentación y asistencia:
Actualizaciones regulares: Actualizaciones mensuales del producto para garantizar las últimas características y parches de seguridad.
Para obtener más información, consulte la extensa documentación de IronPDF y visite el canal de YouTube de Iron Software.
IronPDF y NReco.PdfGenerator son ambos fuertes contendientes para todas tus necesidades de conversión de HTML a PDF, pero si necesitas una herramienta que venga con un rico conjunto de características integradas más allá de simplemente la conversión de HTML a PDF, entonces IronPDF es para ti.
Con un conjunto de características completas, una curva de aprendizaje sencilla y un amplio soporte para los estándares web modernos y la compatibilidad multiplataforma, IronPDF será una adición poderosa a su espacio de trabajo. NReco.PdfGenerator, aunque confiable para la conversión básica de HTML a PDF, carece de muchas de las funciones avanzadas que ofrece IronPDF.
Puedes probar la prueba gratuita de 30 días para ver las características disponibles.