Pruebas en un entorno real
Pruebe en producción sin marcas de agua.
Funciona donde lo necesites.
En el actual panorama de desarrollo acelerado, elegir la herramienta adecuada para generar archivos PDF a partir de HTML puede marcar una diferencia significativa tanto en la eficiencia como en la calidad del resultado. Dos de los principales contendientes para esta tarea son IronPDF y DocRaptor. Aunque ambas herramientas buscan simplificar el proceso de conversión de HTML a PDF, ofrecen diferentes características, modelos de precios y niveles de integración con .NET y otras plataformas.
En este artículo, profundizaremos en una comparación detallada de IronPDFy DocRaptor, destacando sus fortalezas, limitaciones y los mejores casos de uso para cada uno, ayudándole a decidir qué solución se adapta mejor a las necesidades de su proyecto.
IronPDF ofrece una amplia funcionalidad para crear, editar y gestionar PDFs dentro de aplicaciones .NET. Con soporte completo para HTML, CSS, JavaScript y C#, proporciona a los desarrolladores una herramienta altamente personalizable y robusta para trabajar con PDFs. La biblioteca está diseñada para ser amigable para los desarrolladores con una excelente documentación, asegurando una implementación rápida y facilidad de uso en entornos .NET.
DocRaptor es una solución basada en la nube que ofrece generación de PDF y Excel con un enfoque en aplicaciones web e integraciones API. Utilizando el motor Prince PDF, DocRaptor admite una variedad de lenguajes de programación, incluido .NET, y permite la conversión de HTML a PDF. Aunque la plataforma sobresale en la generación básica de PDF, requiere una conexión a Internet para acceder a su API y carece del mismo nivel de personalización y flexibilidad ofrecido por IronPDF.
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 .NET:
Totalmente escrito en y compatible con C#,VB.NET, y F#
.NET Core(8, 7, 6, 5 y 3.1+.)
SO y procesadores: Compatible con varios sistemas operativos y procesadores, como Windows, Mac, Linux, x64, x86 y ARM
Para más detalles sobre la compatibilidad de IronPDF, visiteCompatibilidad con IronPDF.
DocRaptor ofrece una compatibilidad multiplataforma robusta y soporte para versiones de .NET, que incluye lo siguiente:
Compatibilidad con versiones PDF: Puede soportar las versiones de PDF 1.2-1.7
Para obtener una lista completa de las funciones de IronPDF, visiteCaracterísticas de IronPDF.
DocRaptor ofrece un conjunto completo de funciones diseñadas para conversiones confiables de HTML a PDF y de HTML a Excel. Aquí están algunas de sus características clave:
IronPDF:
// Html to pdf c# code
using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from an 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
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
// Html to pdf c# code
using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from an 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
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
' Html to pdf c# code
Imports IronPdf
' Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = True
' Instantiate Renderer
Dim renderer = New ChromePdfRenderer()
' Create a PDF from an 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
Dim myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
myAdvancedPdf.SaveAs("html-with-assets.pdf")
DocRaptor:
DocApi docraptor = new DocApi();
docraptor.Configuration.Username = "YOUR_API_KEY_HERE";
try
{
Doc doc = new Doc(
name: "html-and-javascript",
test: true,
documentType: Doc.DocumentTypeEnum.Pdf,
documentContent: System.IO.File.ReadAllText(@"html-and-javascript-content.html"),
javascript: true
);
byte[] document = docraptor.CreateDoc(doc);
File.WriteAllBytes("html-and-javascript.pdf", document);
Console.WriteLine("Successfully created html-and-javascript.pdf!");
} catch (DocRaptor.Client.ApiException error) {
Console.Write(error.ErrorContent);
}
DocApi docraptor = new DocApi();
docraptor.Configuration.Username = "YOUR_API_KEY_HERE";
try
{
Doc doc = new Doc(
name: "html-and-javascript",
test: true,
documentType: Doc.DocumentTypeEnum.Pdf,
documentContent: System.IO.File.ReadAllText(@"html-and-javascript-content.html"),
javascript: true
);
byte[] document = docraptor.CreateDoc(doc);
File.WriteAllBytes("html-and-javascript.pdf", document);
Console.WriteLine("Successfully created html-and-javascript.pdf!");
} catch (DocRaptor.Client.ApiException error) {
Console.Write(error.ErrorContent);
}
Dim docraptor As New DocApi()
docraptor.Configuration.Username = "YOUR_API_KEY_HERE"
Try
Dim doc As New Doc(name:= "html-and-javascript", test:= True, documentType:= Doc.DocumentTypeEnum.Pdf, documentContent:= System.IO.File.ReadAllText("html-and-javascript-content.html"), javascript:= True)
Dim document() As Byte = docraptor.CreateDoc(doc)
File.WriteAllBytes("html-and-javascript.pdf", document)
Console.WriteLine("Successfully created html-and-javascript.pdf!")
Catch [error] As DocRaptor.Client.ApiException
Console.Write([error].ErrorContent)
End Try
IronPDF manejaHTML a PDFconversión con facilidad, su soporte completo para los estándares web modernos asegura que todos sus documentos PDF salgan perfectos en cuanto a píxeles. DocRaptor utiliza un enfoque basado en API, requiriendo una clave de API y ejecución en la nube para convertir HTML a PDF.
IronPDF:
using IronPdf;
using System;
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
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;
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
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
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
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")
DocRaptor: DocRaptor no admite de forma nativa las funciones de cifrado de PDF.
IronPDF ofrececifrado incorporado, metadatos, y controles de seguridad, mientras que DocRaptor requeriría herramientas de terceros para lograr una funcionalidad similar.
IronPDF:
using IronPdf;
PdfDocument pdf = PdfDocument.FromFile("novel.pdf");
pdf.RedactTextOnAllPages("are");
pdf.SaveAs("redacted.pdf");
using IronPdf;
PdfDocument pdf = PdfDocument.FromFile("novel.pdf");
pdf.RedactTextOnAllPages("are");
pdf.SaveAs("redacted.pdf");
Imports IronPdf
Private pdf As PdfDocument = PdfDocument.FromFile("novel.pdf")
pdf.RedactTextOnAllPages("are")
pdf.SaveAs("redacted.pdf")
DocRaptor no admite la funcionalidad de redacción.
IronPDF ofreceredacción nativa, una función crítica para documentos legales y confidenciales que DocRaptor no tiene.
IronPDF:
using IronPdf;
using IronPdf.Signing;
using System.Security.Cryptography.X509Certificates;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>foo</h1>");
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>");
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>")
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")
DocRaptor no admite nativamente la firma de PDF.
IronPDF ofrece un mecanismo incorporado para firmar digitalmentePDFs, lo que lo hace superior para la autenticación y documentos legales. DocRaptor carece de esta característica clave, por lo que los usuarios de esta biblioteca tendrán que descargar bibliotecas adicionales para llevar a cabo esta tarea.
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")
DocRaptor:
using DocRaptor.Client;
using DocRaptor.Model;
using DocRaptor.Api;
using System;
using System.IO;
class DocRaptorExample
{
static void Main(string[] args)
{
DocApi docraptor = new DocApi();
docraptor.Configuration.Username = "YOUR_API_KEY_HERE";
try
{
Doc doc = new Doc(
name: "text-based-watermark",
test: false, // test documents are free but watermarked
documentType: Doc.DocumentTypeEnum.Pdf,
documentContent: System.IO.File.ReadAllText(@"text-based-watermark-content.html")
);
byte[] document = docraptor.CreateDoc(doc);
File.WriteAllBytes("text-based-watermark.pdf", document);
Console.WriteLine("Successfully created text-based-watermark.pdf!");
} catch (DocRaptor.Client.ApiException error) {
Console.Write(error.ErrorContent);
}
}
}
using DocRaptor.Client;
using DocRaptor.Model;
using DocRaptor.Api;
using System;
using System.IO;
class DocRaptorExample
{
static void Main(string[] args)
{
DocApi docraptor = new DocApi();
docraptor.Configuration.Username = "YOUR_API_KEY_HERE";
try
{
Doc doc = new Doc(
name: "text-based-watermark",
test: false, // test documents are free but watermarked
documentType: Doc.DocumentTypeEnum.Pdf,
documentContent: System.IO.File.ReadAllText(@"text-based-watermark-content.html")
);
byte[] document = docraptor.CreateDoc(doc);
File.WriteAllBytes("text-based-watermark.pdf", document);
Console.WriteLine("Successfully created text-based-watermark.pdf!");
} catch (DocRaptor.Client.ApiException error) {
Console.Write(error.ErrorContent);
}
}
}
Imports DocRaptor.Client
Imports DocRaptor.Model
Imports DocRaptor.Api
Imports System
Imports System.IO
Friend Class DocRaptorExample
Shared Sub Main(ByVal args() As String)
Dim docraptor As New DocApi()
docraptor.Configuration.Username = "YOUR_API_KEY_HERE"
Try
Dim doc As New Doc(name:= "text-based-watermark", test:= False, documentType:= Doc.DocumentTypeEnum.Pdf, documentContent:= System.IO.File.ReadAllText("text-based-watermark-content.html"))
Dim document() As Byte = docraptor.CreateDoc(doc)
File.WriteAllBytes("text-based-watermark.pdf", document)
Console.WriteLine("Successfully created text-based-watermark.pdf!")
Catch [error] As DocRaptor.Client.ApiException
Console.Write([error].ErrorContent)
End Try
End Sub
End Class
IronPDF proporciona completamarca de aguacapacidades, lo que le permite crear y aplicar marcas de agua personalizadas en solo unas pocas líneas de código, y estas marcas de agua se pueden aplicar a archivos PDF nuevos o existentes. Sin embargo, DocRaptor requiere que las marcas de agua se agreguen usando HTML y CSS antes de convertir el contenido HTML a PDF.
IronPDF:
using IronPdf;
using IronPdf.Editing;
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;
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
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")
DocRaptor carece de una función nativa para estampar textos e imágenes en PDFs.
IronPDF permite una personalización detallada cuando estampar texto e imágenes, lo que lo convierte en una opción superior para anotaciones de documentos y branding. DocRaptor carece de soporte nativo para estampado de texto e imágenes, siendo las marcas de agua lo más cercano a esto.
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")
DocRaptor:
No hay soporte nativo para la conversión de DOCX a PDF.
IronPDF ofrece un proceso más fluido y nativo para DOCX a PDFconversión, sin la necesidad de bibliotecas externas como DocRaptor, que carece de soporte integrado para esta tarea.
Para obtener más información sobre el rico conjunto de funciones que ofrece IronPDF y verlas en acción, visita IronPDF.cómo hacerloguías que profundizan en cada función, exploran cómo funcionan y te brindan las habilidades que necesitas para ser un profesional de PDF.
IronPDF tiene diferentes niveles y funciones adicionales por la compra de una licencia. Los desarrolladores también pueden comprarIronSuiteque le da acceso a todos los productos de Iron Software al precio de dos. Si no está listo para comprar una licencia, IronPDF proporciona unprueba gratuitapara que puedas explorar todas las funciones que ofrece antes de comprometerte con una licencia.
IronSuite: Por $1,498, obtienes acceso a todos los productos de Iron Software, incluyendoIronPDF, IronOCR, IronWord, IronXL, IronBarcode, IronQR, IronZIP, IronPrintyIronWebscraper.
DocRaptor ofrece varias opciones de precios basadas en el uso. El precio inicial es de $15 al mes, el cual es basado en el uso, lo que significa que el costo se ajusta según el volumen de documentos que generes. También ofrecen una prueba gratuita para probar el servicio antes de comprometerse con un plan de pago.
IronPDF destaca por su amplia documentación y asistencia:
Referencia API de PDF: Ofrece referencias de API para que puedas aprovechar al máximo lo que nuestras herramientas tienen para ofrecer.
Para obtener más información, consulte la extensa documentación de IronPDF.documentación, y visita elCanal de YouTube de Iron Software.
En conclusión, ambosIronPDFy DocRaptor ofrecen soluciones robustas para generar PDFs a partir de HTML, pero atienden a diferentes audiencias y necesidades de proyectos. IronPDF se destaca por su integración perfecta con entornos .NET, ofreciendo una amplia gama de opciones de personalización y capacidades de procesamiento sin conexión. Es ideal para desarrolladores que trabajan dentro del marco .NET y que necesitan un control preciso sobre la creación y manipulación de PDF. Por otro lado, DocRaptor se destaca con su modelo basado en la nube, garantizando el cumplimiento de los estándares PDF/A y proporcionando una API sencilla para el uso multiplataforma, lo que lo convierte en una excelente opción para proyectos que requieren una generación de documentos confiable y escalable en múltiples lenguajes de programación.
En última instancia, su elección entre IronPDF y DocRaptor debería depender de su stack de desarrollo, el nivel de control necesario y si prefiere una solución en la nube o en las instalaciones.
9 productos API .NET para sus documentos de oficina