COMPARACIóN DE PRODUCTOS

Comparación de Syncfusion PDF Viewer para HTML a PDF

Chipego
Chipego Kalinda
11 de agosto, 2024
Compartir:

Introducción

Una herramienta de manipulación de PDF buena y sencilla puede simplificar una serie de procesos y tareas relacionados con la generación y modificación de PDF. Dentro del .NET Framework, IronPDF y Syncfusion son dos potentes bibliotecas utilizadas para crear, editar y convertir documentos PDF sin dependencias de Adobe. Este artículo comparará IronPDF con Syncfusion basándose en sus características individuales, documentación y costes de licencia.

Descripción general de IronPDF y Syncfusion PDF para .NET Core

IronPDF es una biblioteca PDF completa y repleta de funciones diseñada para desarrolladores .NET que funciona bien en una aplicación .NET Core. Ofrece funciones para crear, editar y procesar documentos PDF a partir de diversas fuentes, como archivos HTML, archivos de imagen y URL.

Explore las características de IronPDF, ya que es ampliamente utilizado por su facilidad de integración y su extenso conjunto de funciones que admite estándares web modernos como CSS3, HTML5 y JavaScript. Algo que diferencia a esta biblioteca de las demás es su capacidad para generar PDF perfectos en píxeles con pocas líneas de código, lo que la hace adecuada incluso para quienes no están familiarizados con formatos de archivo complejos como PDF.

La biblioteca PDF de .NET Core de Syncfusion ofrece una serie de funciones de manipulación de PDF para aplicaciones .NET. Permite a los desarrolladores crear, leer y editar documentos PDF mediante programación. Aunque Syncfusion ofrece un sólido conjunto de funciones, puede requerir una curva de aprendizaje más pronunciada en comparación con IronPDF. La biblioteca es conocida por su amplia documentación y el apoyo de la comunidad, lo que la convierte en una opción viable para los desarrolladores que buscan soluciones PDF.

Compatibilidad multiplataforma

Ver las funciones multiplataforma de IronPDF así como la biblioteca PDF esencial de Syncfusion son altamente compatibles con múltiples plataformas; pueden procesar PDF en muchos sistemas diferentes, así como en el marco .NET. Por esta razón, daremos una visión general de lo que cada producto soporta en términos de frameworks y plataformas.

IronPDF:

  • Versiones de .NET:

    • (C#, VB.NET, F#)

    • .NET Core (8, 7, 6, 5 y 3.1+)

    • .NET Standard (2.0+)
  • .NET Framework (4.6.2+)
  • Entornos de aplicación: IronPDF funciona en entornos de aplicación que incluyen Windows, Linux, Mac, Docker, Azure y AWS
  • IDEs: Funciona con IDEs como Microsoft Visual Studio y JetBrains Rider & ReSharper
  • Sistemas operativos y procesadores: Soporta varios sistemas operativos y procesadores diferentes, incluyendo Windows, Mac, Linux, x64, x86, ARM

Syncfusion:

  • .NET Standard (2.0+)
  • .NET Core 3.0
  • .NET Framework (4.6.1+)
  • Se puede utilizar con otras aplicaciones como Windows Forms, ASP.NET Core, Xamarin, Flutter, etc
  • Compatible con Windows, Mac y Linux

    Obtenga más información sobre la compatibilidad de IronPDF visitando la Vista General de Características de IronPDF.

Comparación de funciones: IronPDF frente a Syncfusion

Tanto IronPDF como Syncfusion ofrecen una gran variedad de funciones para la manipulación de PDF, por lo que, al comparar estas dos bibliotecas, es esencial examinar algunas de las funciones específicas que ofrece cada una de ellas. Antes de entrar en más detalles sobre estas funciones, veamos un resumen de algunas características clave:

IronPDF

  • Conversión de HTML a PDF: IronPDF admite estándares web modernos (CSS3, HTML5, JavaScript), lo que permite la creación de documentos PDF de alta fidelidad.
  • Cifrado de PDF: Los usuarios pueden utilizar las potentes herramientas de cifrado de IronPDF para cifrar y descifrar archivos PDF, añadiendo una capa adicional de seguridad a sus archivos PDF.
  • Edición de PDF: La biblioteca IronPDF incluye funciones para fusionar, dividir, dar formato y modificar archivos PDF existentes.
  • Firmas digitales para archivos PDF: IronPDF permite a los usuarios firmar digitalmente sus PDFs.
  • Marcado de agua: Aplica fácilmente marcas de agua de texto e imagen a archivos PDF; aproveche su uso de HTML/CSS para obtener un control total sobre el proceso.
  • Stamping de PDF: Estampa imágenes y texto en tus documentos PDF usando IronPDF.

Syncfusion

  • Creación de PDF: Utilice Syncfusion para crear archivos PDF desde cero o convertir contenido HTML y páginas web en un documento PDF simple.
  • Encriptación de PDFs: Mantén tus datos sensibles seguros aprovechando las herramientas de encriptación de Syncfusion.
  • Redacción: Los usuarios pueden redactar texto e imágenes dentro de su documento PDF utilizando Syncfusion.
  • Firmar PDF: Valide y agregue firmas digitales a sus archivos PDF.
  • Trabajar con formularios: Soporta la creación de formularios dentro de su documento PDF y permite a los usuarios rellenar y aplanar formularios.
  • Compresión de PDF: Los usuarios pueden comprimir documentos PDF para ahorrar espacio.

    Explore las extensas Características en Detalle de IronPDF.

Comparación de características entre IronPDF y Syncfusion

Conversión de HTML a PDF

Descubra cómo funciona la conversión de HTML a PDF, una tarea simple pero esencial en diversos lugares de trabajo y entornos. Los siguientes ejemplos de código comparan cómo IronPDF y Syncfusion gestionan este proceso.

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 an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
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 an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
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 an HTML string using C#
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")
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")
$vbLabelText   $csharpLabel

Ejemplo de Syncfusion:

using Syncfusion.Pdf;
using Syncfusion.HtmlConverter;

HtmlToPdfConverter htmlConverter = new HtmlToPdfConverter();
PdfDocument document = htmlConverter.Convert("http://www.syncfusion.com");
FileStream fileStream = new FileStream("HTML-to-PDF.pdf", FileMode.CreateNew, FileAccess.ReadWrite);
document.Save(fileStream);
document.Close(true);
using Syncfusion.Pdf;
using Syncfusion.HtmlConverter;

HtmlToPdfConverter htmlConverter = new HtmlToPdfConverter();
PdfDocument document = htmlConverter.Convert("http://www.syncfusion.com");
FileStream fileStream = new FileStream("HTML-to-PDF.pdf", FileMode.CreateNew, FileAccess.ReadWrite);
document.Save(fileStream);
document.Close(true);
Imports Syncfusion.Pdf
Imports Syncfusion.HtmlConverter

Private htmlConverter As New HtmlToPdfConverter()
Private document As PdfDocument = htmlConverter.Convert("http://www.syncfusion.com")
Private fileStream As New FileStream("HTML-to-PDF.pdf", FileMode.CreateNew, FileAccess.ReadWrite)
document.Save(fileStream)
document.Close(True)
$vbLabelText   $csharpLabel

Cuando se trata de convertir HTML a PDF, IronPDF ofrece un método simplificado y fácil, al mismo tiempo que brinda a los usuarios mucho control. IronPDF es muy compatible con los modernos estándares web y puede generar documentos PDF de alta fidelidad a partir de páginas web. Syncfusion ofrece una herramienta sencilla para la conversión de contenido HTML y URL simples; sin embargo, carece de soporte para cualquier estándar web avanzado.

Cifrar PDF

Ver cómo la cifrado y descifrado de PDF pueden ser cruciales en diversos entornos laborales. Es aún más esencial contar con una herramienta capaz de realizar esta tarea con facilidad. Comparemos cómo IronPDF y Syncfusion gestionan el cifrado de PDF en el siguiente ejemplo de código.

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")
$vbLabelText   $csharpLabel

Ejemplo de Syncfusion:

using Syncfusion.Pdf;

PdfLoadedDocument document = new PdfLoadedDocument("input.pdf");
PdfSecurity security = document.Security;
security.UserPassword = "syncfusion";
security.Algorithm = PdfEncryptionAlgorithm.AES;
security.KeySize = PdfEncryptionKeySize.Key256Bit;
security.Permissions = PdfPermissionsFlags.Print

document.Save("encrypted.pdf");
document.Close(true);
using Syncfusion.Pdf;

PdfLoadedDocument document = new PdfLoadedDocument("input.pdf");
PdfSecurity security = document.Security;
security.UserPassword = "syncfusion";
security.Algorithm = PdfEncryptionAlgorithm.AES;
security.KeySize = PdfEncryptionKeySize.Key256Bit;
security.Permissions = PdfPermissionsFlags.Print

document.Save("encrypted.pdf");
document.Close(true);
Imports Syncfusion.Pdf

Private document As New PdfLoadedDocument("input.pdf")
Private security As PdfSecurity = document.Security
security.UserPassword = "syncfusion"
security.Algorithm = PdfEncryptionAlgorithm.AES
security.KeySize = PdfEncryptionKeySize.Key256Bit
security.Permissions = PdfPermissionsFlags.Print document.Save("encrypted.pdf")
document.Close(True)
$vbLabelText   $csharpLabel

IronPDF presenta a los usuarios una herramienta de encriptación robusta pero concisa y directa. De este modo, los usuarios pueden cifrar fácilmente sus PDF y controlar la configuración de seguridad del PDF cifrado. La herramienta de cifrado de Syncfusion es menos intuitiva; ofrece dos tipos de cifrado, lo que en última instancia proporciona al usuario más opciones para sus necesidades de cifrado, pero esto también significa que el usuario tiene que hacer más trabajo e investigación antes de usar esta herramienta.

Redactar contenido PDF

A veces, al trabajar con datos privados o sensibles, es posible que desees Redactar Texto en PDFs en partes de un documento PDF. En los siguientes ejemplos de código, veremos cómo puede lograrse la redacción utilizando IronPDF en comparación con Syncfusion.

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")
$vbLabelText   $csharpLabel

Ejemplo de Syncfusion:

using Syncfusion.Pdf;
using Syncfusion.Pdf.Graphics;

PdfLoadedDocument loadedDocument = new PdfLoadedDocument("input.pdf");
PdfRedaction textRedaction = new PdfRedaction(new RectangleF(10, 40, 30, 30), Color.Black);
loadedDocument.Pages[0].Redactions.Add(textRedaction);
loadedDocument.Save("redacted.pdf");
loadedDocument.Close(true);
using Syncfusion.Pdf;
using Syncfusion.Pdf.Graphics;

PdfLoadedDocument loadedDocument = new PdfLoadedDocument("input.pdf");
PdfRedaction textRedaction = new PdfRedaction(new RectangleF(10, 40, 30, 30), Color.Black);
loadedDocument.Pages[0].Redactions.Add(textRedaction);
loadedDocument.Save("redacted.pdf");
loadedDocument.Close(true);
Imports Syncfusion.Pdf
Imports Syncfusion.Pdf.Graphics

Private loadedDocument As New PdfLoadedDocument("input.pdf")
Private textRedaction As New PdfRedaction(New RectangleF(10, 40, 30, 30), Color.Black)
loadedDocument.Pages(0).Redactions.Add(textRedaction)
loadedDocument.Save("redacted.pdf")
loadedDocument.Close(True)
$vbLabelText   $csharpLabel

IronPDF adopta un enfoque directo y conciso para la redacción de contenido PDF. Cuenta con una API sencilla e intuitiva que permite a los usuarios redactar contenidos mediante programación, mejorando así la eficacia de su área de trabajo. Syncfusion ofrece diferentes formas de redactar contenido PDF, eliminarlo, mostrar texto en el área redactada y, como se muestra arriba, dibujar una imagen sobre el área redactada. Aunque la herramienta de redacción de Syncfusion ofrece mucho control sobre el proceso, implica un proceso más manual que podría incluir una curva de aprendizaje más pronunciada.

Firmar digitalmente documentos PDF

Automatizar el proceso de firmar documentos PDF digitalmente puede ahorrar mucho tiempo. Aquí hay algunos ejemplos de código que demuestran cómo IronPDF y Syncfusion se comparan en términos de firma de documentos.

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")
$vbLabelText   $csharpLabel

Ejemplo de Syncfusion:

using Syncfusion.Pdf;
using System.Drawing;

PdfLoadedDocument loadedDocument = new PdfLoadedDocument("input.pdf");
PdfCertificate certificate = new PdfCertificate("Syncfusion.pfx", "password");
PdfSignature signature = new PdfSignature(loadedDocument, loadedDocument.Pages[0], certificate, "Signature");
signature.Bounds = new RectangleF(0, 0, 100, 50);
loadedDocument.Save("signed.pdf");
loadedDocument.Close(true);
using Syncfusion.Pdf;
using System.Drawing;

PdfLoadedDocument loadedDocument = new PdfLoadedDocument("input.pdf");
PdfCertificate certificate = new PdfCertificate("Syncfusion.pfx", "password");
PdfSignature signature = new PdfSignature(loadedDocument, loadedDocument.Pages[0], certificate, "Signature");
signature.Bounds = new RectangleF(0, 0, 100, 50);
loadedDocument.Save("signed.pdf");
loadedDocument.Close(true);
Imports Syncfusion.Pdf
Imports System.Drawing

Private loadedDocument As New PdfLoadedDocument("input.pdf")
Private certificate As New PdfCertificate("Syncfusion.pfx", "password")
Private signature As New PdfSignature(loadedDocument, loadedDocument.Pages(0), certificate, "Signature")
signature.Bounds = New RectangleF(0, 0, 100, 50)
loadedDocument.Save("signed.pdf")
loadedDocument.Close(True)
$vbLabelText   $csharpLabel

IronPDF ofrece una forma sencilla de aplicar firmas digitales a documentos PDF, requiriendo menos líneas de código y, por lo tanto, haciendo que el proceso sea rápido y fácil. En comparación, Syncfusion requiere más líneas de código, lo que lo convierte en una opción menos simplificada.

Aplicar marcas de agua en PDF

La capacidad de agregar y personalizar marcas de agua en PDF en archivos PDF utilizando un programa puede ser muy útil para tratar la confidencialidad, la protección de derechos de autor y la marca, entre otras tareas al gestionar documentos sensibles. A continuación se muestra una comparación entre IronPDF y Syncfusion en cuanto a la adición de marcas de agua a un documento PDF.

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")
$vbLabelText   $csharpLabel

Ejemplo de Syncfusion:

using Syncfusion.Pdf;
using Syncfusion.Pdf.Graphics;
using System.Drawing;

PdfLoadedDocument loadedDocument = new PdfLoadedDocument("input.pdf");
//Add a page to the document pdfpage page
PdfPageBase page = loadedDocument.Pages[0];
PdfGraphics graphics = page.Graphics;
PdfFont font = new PdfStandardFont(PdfFontFamily.Helvetica, 20);
PdfGraphicsState state = graphics.Save();
graphics.SetTransparency(0.25f);
graphics.DrawString("Watermark", font, PdfPens.Blue, PdfBrushes.Blue, new PointF(100, 100));
graphics.Restore(state);
loadedDocument.Save("watermarked.pdf");
loadedDocument.Close(true);
using Syncfusion.Pdf;
using Syncfusion.Pdf.Graphics;
using System.Drawing;

PdfLoadedDocument loadedDocument = new PdfLoadedDocument("input.pdf");
//Add a page to the document pdfpage page
PdfPageBase page = loadedDocument.Pages[0];
PdfGraphics graphics = page.Graphics;
PdfFont font = new PdfStandardFont(PdfFontFamily.Helvetica, 20);
PdfGraphicsState state = graphics.Save();
graphics.SetTransparency(0.25f);
graphics.DrawString("Watermark", font, PdfPens.Blue, PdfBrushes.Blue, new PointF(100, 100));
graphics.Restore(state);
loadedDocument.Save("watermarked.pdf");
loadedDocument.Close(true);
Imports Syncfusion.Pdf
Imports Syncfusion.Pdf.Graphics
Imports System.Drawing

Private loadedDocument As New PdfLoadedDocument("input.pdf")
'Add a page to the document pdfpage page
Private page As PdfPageBase = loadedDocument.Pages(0)
Private graphics As PdfGraphics = page.Graphics
Private font As PdfFont = New PdfStandardFont(PdfFontFamily.Helvetica, 20)
Private state As PdfGraphicsState = graphics.Save()
graphics.SetTransparency(0.25F)
graphics.DrawString("Watermark", font, PdfPens.Blue, PdfBrushes.Blue, New PointF(100, 100))
graphics.Restore(state)
loadedDocument.Save("watermarked.pdf")
loadedDocument.Close(True)
$vbLabelText   $csharpLabel

La API simple y efectiva de IronPDF permite a los usuarios aplicar rápidamente marcas de agua a sus documentos PDF y al mismo tiempo les ofrece más control sobre todo el proceso gracias a su uso de HTML/CSS. Esta función simplifica a los usuarios la adición de marcas de agua personalizadas según sus necesidades. Sin embargo, Syncfusion puede no ser tan eficiente debido a la complejidad de su herramienta de marca de agua. Con Syncfusion, los recién llegados tendrán que hacerlo todo manualmente, por lo que tardarán más tiempo en entender cómo funcionan las cosas, teniendo en cuenta la pronunciada curva de aprendizaje de este software en relación con tales tareas.

Estampar imágenes y texto en PDF

Al igual que al aplicar marcas de agua, habrá ocasiones en las que puede estar trabajando con páginas PDF que requieran que se les Estampe algo. Ahora compararemos cómo IronPDF y Syncfusion gestionan el estampado de contenido en un documento PDF.

Ejemplo de 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")
$vbLabelText   $csharpLabel
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")
$vbLabelText   $csharpLabel

Ejemplo de Syncfusion:

using Syncfusion.Pdf;
using Syncfusion.Pdf.Graphics;
using System.Drawing;

PdfLoadedDocument loadedDocument = new PdfLoadedDocument("input.pdf");
PdfPageBase page = loadedDocument.Pages[0];
PdfGraphics graphics = page.Graphics;
PdfFont font = new PdfStandardFont(PdfFontFamily.Helvetica, 12);
graphics.DrawString("Hello, World!", font, PdfBrushes.Black, new PointF(10, 10));
loadedDocument.Save("stamped.pdf");
loadedDocument.Close(true);
using Syncfusion.Pdf;
using Syncfusion.Pdf.Graphics;
using System.Drawing;

PdfLoadedDocument loadedDocument = new PdfLoadedDocument("input.pdf");
PdfPageBase page = loadedDocument.Pages[0];
PdfGraphics graphics = page.Graphics;
PdfFont font = new PdfStandardFont(PdfFontFamily.Helvetica, 12);
graphics.DrawString("Hello, World!", font, PdfBrushes.Black, new PointF(10, 10));
loadedDocument.Save("stamped.pdf");
loadedDocument.Close(true);
Imports Syncfusion.Pdf
Imports Syncfusion.Pdf.Graphics
Imports System.Drawing

Private loadedDocument As New PdfLoadedDocument("input.pdf")
Private page As PdfPageBase = loadedDocument.Pages(0)
Private graphics As PdfGraphics = page.Graphics
Private font As PdfFont = New PdfStandardFont(PdfFontFamily.Helvetica, 12)
graphics.DrawString("Hello, World!", font, PdfBrushes.Black, New PointF(10, 10))
loadedDocument.Save("stamped.pdf")
loadedDocument.Close(True)
$vbLabelText   $csharpLabel

IronPDF permite a los usuarios estampar documentos PDF con texto e imágenes de manera altamente flexible y personalizable. Les capacita poniendo todo el proceso bajo su control. La API es fácil de entender y utilizar, especialmente para aquellas personas que puedan tener algún conocimiento sobre HTML/CSS. El proceso de estampado de Syncfusion es más complejo, con un mayor enfoque en las imágenes que en el texto, pero aún así ofrece a los usuarios mucho control sobre el proceso; sin embargo, podría haber curvas de aprendizaje bastante pronunciadas asociadas con esta herramienta.

DOCX a PDF

Al crear archivos PDF, puede resultar necesario cambiarlos de formato. En este caso, echaremos un vistazo a la Conversión de DOCX a PDF y compararemos cómo IronPDF y Syncfusion manejan este proceso.

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")
$vbLabelText   $csharpLabel

Ejemplo de Syncfusion:

using System.IO;
using Syncfusion.DocIO.DLS;
using Syncfusion.DocIORenderer;
using Syncfusion.OfficeChart;
using Syncfusion.Pdf;

WordDocument document = new WordDocument("sample.docx", FormatType.Docx);
DocToPDFConverter converter = new DocToPDFConverter();
document.ChartToImageConverter = new ChartToImageConverter();
PdfDocument pdf = converter.ConvertToPDF(document);
pdf.Save("output.pdf");
pdf.Close(true);
wordDocument.Close();
using System.IO;
using Syncfusion.DocIO.DLS;
using Syncfusion.DocIORenderer;
using Syncfusion.OfficeChart;
using Syncfusion.Pdf;

WordDocument document = new WordDocument("sample.docx", FormatType.Docx);
DocToPDFConverter converter = new DocToPDFConverter();
document.ChartToImageConverter = new ChartToImageConverter();
PdfDocument pdf = converter.ConvertToPDF(document);
pdf.Save("output.pdf");
pdf.Close(true);
wordDocument.Close();
Imports System.IO
Imports Syncfusion.DocIO.DLS
Imports Syncfusion.DocIORenderer
Imports Syncfusion.OfficeChart
Imports Syncfusion.Pdf

Private document As New WordDocument("sample.docx", FormatType.Docx)
Private converter As New DocToPDFConverter()
document.ChartToImageConverter = New ChartToImageConverter()
Dim pdf As PdfDocument = converter.ConvertToPDF(document)
pdf.Save("output.pdf")
pdf.Close(True)
wordDocument.Close()
$vbLabelText   $csharpLabel

IronPDF utiliza un método simple y directo para convertir archivos DOCX en PDFs. Para ello, utiliza ChromePdfRenderer, que produce PDF de alta calidad a partir de varios tipos de documentos. Todo está integrado en la biblioteca IronPDF, por lo que no es necesario realizar instalaciones adicionales al convertir diferentes formatos de archivo en PDF o guardarlos posteriormente. Syncfusion PDF, sin embargo, no puede realizar este tipo de conversión por sí solo; necesita que Syncfusion Word esté instalado en el proyecto antes de poder completar dichas conversiones.

Resumen comparativo de funciones

Resumen de Comparación de Funciones

Precios y licencias de IronPDF

Explore las Opciones de Licenciamiento de IronPDF, que ofrecen diferentes niveles y características adicionales para la compra de una licencia. Los desarrolladores también pueden comprar las opciones de licencia de Iron Suite para todos los productos, lo que le 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 de 30 días.

  • Licencias perpetuas: Ofrece una gama de licencias perpetuas dependiendo del tamaño de su equipo, las necesidades de su proyecto y el número de ubicaciones. Cada tipo de licencia incluye asistencia por correo electrónico.
  • Lite License: Esta licencia cuesta $749 y admite un desarrollador, una ubicación y un proyecto.
  • Plus License: Apoyando a tres desarrolladores, tres ubicaciones y tres proyectos, este es el siguiente paso después de la lite license y cuesta $1,499. La Plus license ofrece soporte por chat y soporte telefónico además del soporte básico por correo electrónico.
  • Licencia Profesional: Esta licencia es adecuada para equipos grandes, admitiendo a diez desarrolladores, diez ubicaciones y diez proyectos por $2,999. Ofrece los mismos canales de soporte de contacto que los niveles anteriores, pero también ofrece soporte mediante compartición de pantalla.
  • Redistribución sin regalías: La licencia de IronPDF también ofrece cobertura de redistribución sin regalías por un costo adicional de $1,999
  • Soporte ininterrumpido del producto: IronPDF ofrece acceso a actualizaciones continuas del producto, mejoras en las características de seguridad y soporte de su equipo de ingeniería por $999 al año o una compra única de $1,999 para una cobertura de 5 años.
  • 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.

    Opciones de precios y licencias de IronPDF

Precios y licencias de Syncfusion

Syncfusion ofrece una gama de licencias y niveles que se adaptan a las necesidades de los distintos desarrolladores. Cada tipo de licencia incluye asistencia las 24 horas del día, acceso a asistencia remota, solicitudes ilimitadas de errores y funciones, y un sistema de asistencia en línea.

  • Licencias de Equipo: Las licencias de equipo son licencias para equipos de desarrolladores, y hay tres niveles dentro de este rango.

    • Un equipo de hasta 5 desarrolladores: $395/mes

    • Un equipo de hasta 10 desarrolladores: $695/mes
  • Más de un equipo de 10: Este nivel no tiene un precio fijo; en su lugar, necesitas solicitar una cotización
  • Unlimited License: Estos niveles de licencia no tienen un precio fijo; en su lugar, funcionan con un sistema de cotización.

    • Licencia de proyecto: Un proyecto o aplicación nombrada

    • Licencia Global: Acceso a nivel de empresa para todo el desarrollo
  • Licencia de División: Una división de una empresa trabajando en múltiples proyectos
  • Licencia Comunitaria: El software con licencia de Syncfusion ofrece una licencia comunitaria para empresas y usuarios con menos de $1 millón USD en ingresos brutos anuales, cinco o menos desarrolladores y diez o menos empleados en total.

Tabla comparativa de licencias

Comparación de Licencias de Syncfusion

Documentación y soporte: IronPDF frente a Syncfusion

IronPDF

  • Documentación Completa: Documentación extensa y fácil de usar que cubre todas las características.
  • Soporte 24/5: Hay soporte activo de ingenieros disponible.
  • Tutoriales en video: Guías paso a paso en video están disponibles en YouTube.
  • Foro de la comunidad: Comunidad participativa para soporte adicional.
  • Actualizaciones regulares: Actualizaciones mensuales del producto para garantizar las últimas características y parches de seguridad.

Syncfusion

  • Foro: Ofrece un foro comunitario para conectarse y aprender dentro de su comunidad.
  • Tutoriales: Syncfusion tiene tutoriales y guías dentro de su base de conocimientos.
  • Características y Errores: Los usuarios pueden enviar comentarios sobre los productos y, cuando encuentren errores, pueden enviar tickets de soporte.
  • Recursos: Syncfusion ofrece libros electrónicos, seminarios web, preguntas frecuentes técnicas y más.

    Para obtener más detalles sobre la documentación y el soporte de IronPDF, visita la Documentación de IronPDF y el Canal de YouTube de IronPDF.

Conclusión

En conclusión, cuando se trata de elegir una biblioteca de manipulación de PDF para .NET Core, IronPDF emerge como la opción superior. Su amplio conjunto de funciones, su facilidad de uso y su completa asistencia y documentación lo convierten en la opción ideal para los desarrolladores. IronPDF destaca en varios aspectos, como la conversión de HTML a PDF, el cifrado, la redacción, las firmas digitales y las marcas de agua, ofreciendo soluciones ágiles y eficaces para estas tareas. Además, las opciones de precios y licencias de IronPDF son más sencillas y se adaptan bien a equipos de distintos tamaños y a las necesidades de los proyectos, lo que lo convierte en una opción rentable para muchos desarrolladores.

Por otro lado, Syncfusion PDF para .NET Core, aunque es una biblioteca capaz, a menudo requiere una curva de aprendizaje más pronunciada y más esfuerzo manual para tareas similares. Syncfusion proporciona una sólida gama de funciones, pero carece de la facilidad intuitiva y la flexibilidad que ofrece IronPDF. No obstante, puede utilizarlo con otras herramientas de Syncfusion para ampliar su conjunto de capacidades, como su visor de PDF ASP.NET o Syncfusion Word.

Para aquellos que buscan una biblioteca PDF fiable, potente y fácil de usar dentro del marco .NET, IronPDF destaca como la opción más clara. Su combinación de funcionalidad sólida, asistencia al usuario y opciones de licencia flexibles la convierten en una herramienta inestimable para cualquier desarrollador que trabaje con archivos PDF.

Puedes probar la prueba gratuita de 30 días para ver las características disponibles.

Chipego
Ingeniero de software
Chipego tiene una habilidad natural para escuchar que le ayuda a comprender los problemas de los clientes y a ofrecer soluciones inteligentes. Se unió al equipo de Iron Software en 2023, después de estudiar una licenciatura en Tecnología de la Información. IronPDF e IronOCR son los dos productos en los que Chipego se ha centrado, pero su conocimiento de todos los productos crece día a día, a medida que encuentra nuevas formas de ayudar a los clientes. Disfruta de lo colaborativa que es la vida en Iron Software, con miembros del equipo de toda la empresa que aportan su variada experiencia para contribuir a soluciones eficaces e innovadoras. Cuando Chipego está lejos de su escritorio, a menudo se le puede encontrar disfrutando de un buen libro o jugando al fútbol.
< ANTERIOR
iTextSharp C# HTML to PDF Alternativa para .NET Core
SIGUIENTE >
Wkhtmltopdf C# Comparación con Ejemplos de Código