COMPARACIóN DE PRODUCTOS

Comparación entre IronPDF y PDFium.NET

Publicado en 25 de enero, 2023
Compartir:

Con la mejora de la tecnología y el aumento del uso de Internet, la mayoría de los datos se envían y reciben en formato digital, principalmente en archivos PDF.

Trabajar con documentos PDF en C# ha sido difícil para los desarrolladores en el pasado reciente. Hay muchos escenarios en los que los desarrolladores necesitan incorporar capacidades de visualización y generación de PDF en sus aplicaciones. Teniendo esto en cuenta, se han desarrollado muchas bibliotecas para facilitar estas tareas y otras similares.

Este artículo va a comparar dos de las bibliotecas PDF más populares para desarrolladores .NET y .NET Core. Estas dos bibliotecas son:

  • La biblioteca IronPDF .NET
  • La biblioteca PDFium.NET SDK

    IronPDF y PDFium.NET pueden crear, manipular e imprimir archivos PDF en aplicaciones .NET. La cuestión que se plantea es: ¿qué biblioteca debe utilizarse? Este artículo le permitirá decidir por sí mismo.

    En primer lugar, echemos un vistazo a lo que ofrecen las dos bibliotecas, y luego pasaremos a la comparación propiamente dicha.

La biblioteca PDFium.NET SDK y sus funciones

PDFium.NET se utiliza para crear, modificar y visualizar archivos en formato PDF.(formatos de documentos portátiles). Proporciona una API C#/VB.NET de alto nivel para la creación dinámica de PDF en un servidor web y para implementar la función Guardar como PDF en aplicaciones web o de escritorio existentes.

Las características más destacadas de PDFium.NET son:

  • Crea PDF desde cero o a partir de una colección de imágenes escaneadas
  • Barras de herramientas listas para usar para editar, dividir, combinar y manipular PDF, incluida la extracción de texto
  • El control de visor de PDF independiente de Winforms o WPF admite zoom
  • Compatible con .NET 2.0+, .NET 6, Standard, Core, Mono, Microsoft Azure
  • Y también funciona en Windows XP y Mac OS
  • Admite toda la gama de funciones de representación de PDF
  • Visor de PDF de alto rendimiento que permite buscar, imprimir y editar archivos PDF
  • Motor de tratamiento de texto extremadamente rápido

IronPDF y sus principales características

La biblioteca PDF IronPDF .NET está hecha a medida para desarrolladores, en particular para desarrolladores de C#. Con esta asombrosa biblioteca PDF, podrá incorporar fácilmente funciones de visualización de PDF en sus proyectos .NET.

IronPDF tiene un motor Chromium incorporado que puede convertir HTML a PDF muy fácilmente. Esto no requiere ninguna API complicada y de bajo nivel para manipular archivos PDF. Puede manejar archivos fuente HTML como documentos HTML, archivos JavaScript y páginas web ASPX.

IronPDF puede personalizar PDF con encabezados y pies de página personalizados, marcas de agua y mucho más. También hace que leer texto en PDF y extraer gráficos sea pan comido para los desarrolladores.

Entre las características más destacadas de IronPDF for .NET se incluyen:

  • Creación de documentos PDF mediante HTML4/5, CSS y JavaScript
  • Carga de URL con credenciales de inicio de sesión de red personalizadas, agentes de usuario, proxies, cookies, cabeceras HTTP y variables de formulario.
  • Cumplimentación programática de campos de formularios HTML/PDF.
  • Extracción de texto y gráficos de archivos PDF
  • Actualización de páginas PDF con nuevos contenidos.
  • Añadir y personalizar encabezados y pies de página a los PDF.
  • Fusión y división de documentos PDF.
  • Conversión de formularios web ASP.NET en PDF imprimibles.
  • Convierte archivos HTML/URL en PDF.
  • Imprimir archivos PDF sin utilizar Adobe Acrobat Reader.

    La biblioteca IronPDF está disponible para casi todos los sistemas operativos y marcos compatibles con C#, incluidos los siguientes:

  • .NET Core 2.1, 3.0, 3.1, .NET 5, 6 y 7
  • Compatibilidad universal con .NET Standard 2.0
  • Azure, AWS, Docker, Linux, Windows

    El resto del artículo es el siguiente:

  1. Instalación de la biblioteca IronPDF C#

  2. Instalación del SDK PDFium.NET

  3. Crear un documento PDF

  4. Crear PDF a partir de varias imágenes

  5. Firma digital PDF

  6. Precios y licencias

  7. Conclusión

1. Instalación de la biblioteca C# de IronPDF

Existen diferentes formas de descargar e instalar la biblioteca IronPDF. Los métodos más sencillos son los siguientes:

  1. Uso de Visual Studio

  2. Símbolo del sistema para desarrolladores

  3. Descargue directamente el paquete NuGet

  4. Descargar la biblioteca IronPDF.DLL

1.1. Uso de Visual Studio

En su proyecto de Visual Studio, desde el menú "Herramientas" o haga clic con el botón derecho en su proyecto en el Explorador de soluciones y seleccione "Administrar paquetes NuGet". Ambas opciones se muestran a continuación en las capturas de pantalla.

Comparación entre IronPDF y PDFium.NET, Figura 1: Acceso al gestor de paquetes NuGet mediante el menú Herramientas
Comparación entre IronPDF y PDFium.NET, Figura 2: Acceso al gestor de paquetes NuGet mediante el Explorador de soluciones

Una vez abierto el gestor de paquetes NuGet, busque el paquete IronPDF e instálelo, como se muestra en la siguiente captura de pantalla.

Comparación entre IronPDF y PDFium.NET, Figura 3: Instalación de la biblioteca IronPDF mediante el gestor de paquetes NuGet

1.2. Uso del símbolo del sistema para desarrolladores

IronPDF también puede descargarse a través del símbolo del sistema para desarrolladores. Siga los pasos que se indican a continuación:

  • Abra el Instructor de comandos del desarrollador o la consola del gestor de paquetes desde el menú Herramientas.
  • Escribe el siguiente comando:
Install-Package IronPdf
  • Pulse la tecla Intro
  • Esto descargará e instalará la biblioteca

1.3. Descargue directamente el paquete NuGet

IronPDF también puede descargarse directamente visitando la página webPaquete NuGet IronPDF. Los pasos son:

  • Busque Descargar paquete y haga clic en él.
  • El paquete se descargará e instalará.

1.4. Instale IronPDF descargando la biblioteca

También puededescargue el archivo IronPDF.DLL directamente de la página del paquete de IronPDF.

Comparación entre IronPDF y PDFium.NET, Figura 4: Descarga de la biblioteca DLL de IronPDF desde el sitio web de IronPDF

Haga referencia a la biblioteca IronPDF en su proyecto siguiendo estos pasos:

  • Haga clic con el botón derecho en la solución en el Explorador de soluciones y seleccione Referencias
  • Buscar la biblioteca IronPDF.dll
  • Haga clic en OK!

    Todo hecho! Se descarga e instala IronPDF. Ahora trabajaremos en la instalación de la biblioteca PDFium.NET SDK.

2. Instalación de PDFium.NET

Podemos instalar PDFium.NET utilizando el gestor de paquetes NuGet o descargando el instalador de PDFium para Windows.

  • Abra los paquetes NuGet en Visual Studio como hicimos en IronPDF.
  • Busque PDFium.NET.SDK. Haga clic en Instalar en su proyecto actual.

    Comparación entre IronPDF y PDFium.NET, Figura 5: Búsqueda en PDFium.NET
  • También puede utilizar Package Manager Console para instalar. Siga el paso "Use Developer Command Prompt" como se menciona en IronPDF y escriba el siguiente comando:
    PM> Install-Package Pdfium.Net.SDK
  • Pulsa Intro. Esto descargará e instalará la biblioteca.

3. Creación de un documento PDF

3.1. Utilización de IronPDF

IronPDF ofrece varios métodos para generar archivos PDF. Veamos dos importantes.

URL existente a PDF

IronPDF hace que sea muy sencillo convertirHTML a PDF con el renderizado de URL de IronPDF uso de URL existentes.

Considere el siguiente código fuente.

IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
using var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");
Pdf.SaveAs("url.pdf");
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
using var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");
Pdf.SaveAs("url.pdf");
Dim Renderer As New IronPdf.ChromePdfRenderer()
Dim Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/")
Pdf.SaveAs("url.pdf")
VB   C#

Cadena de entrada HTML a PDF

El siguiente fragmento de código muestra cómo puede utilizarse una cadena HTML para representar una página PDF. Puede utilizar HTML sencillo o combinarlo con CSS, imágenes y JavaScript.

var Renderer = new IronPDF.ChromePdfRenderer();
using var PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>");
PDF.SaveAs("pixel-perfect.pdf");

// Load external html assets: images, css and javascript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
using var AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='logo_square.png'>", @"e:\site\assets\");
AdvancedPDF.SaveAs("html-with-assets.pdf");
var Renderer = new IronPDF.ChromePdfRenderer();
using var PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>");
PDF.SaveAs("pixel-perfect.pdf");

// Load external html assets: images, css and javascript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
using var AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='logo_square.png'>", @"e:\site\assets\");
AdvancedPDF.SaveAs("html-with-assets.pdf");
Dim Renderer = New IronPDF.ChromePdfRenderer()
Dim PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>")
PDF.SaveAs("pixel-perfect.pdf")

' 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 AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='logo_square.png'>", "e:\site\assets\")
AdvancedPDF.SaveAs("html-with-assets.pdf")
VB   C#

El resultado es el siguiente:

Comparación entre IronPDF y PDFium.NET, Figura 6: IronPDF genera PDF a partir de una URL y una cadena HTML

3.2. Uso de PDFium.NET

Puede generar PDF sobre la marcha utilizando imágenes y objetos de texto. Sin embargo, no puede convertir una URL o una cadena HTML en un archivo PDF.

El código para generar PDFs utilizando PDFium.NET es el siguiente:

public void CreatePDF()
{
    // Step 1: Initialize PDF library and create empty document
    // Return value: PdfDocument main class
    PdfCommon.Initialize();
    var doc = PdfDocument.CreateNew();  // Create a PDF document

    // Step 2: Add new page
    // Arguments: page width: 8.27", page height: 11.69", Unit of measure: inches
    //  The PDF unit of measure is point. There are 72 points in one inch.
    var page = doc.Pages.InsertPageAt(doc.Pages.Count, 8.27f * 72, 11.69f * 72);

    // Step 3: Add graphics and text contents to the page
    // Insert image from file using standard System.Drawing.Bitmap class
    using (PdfBitmap logo = PdfBitmap.FromFile(@"e:\site\assets\logo_square.png"))
    {
        PdfImageObject imageObject = PdfImageObject.Create(doc, logo, 0, 0);
        //image resolution is 300 DPI and location is 1.69 x 10.0 inches.
        imageObject.Matrix = new FS_MATRIX(logo.Width * 72 / 300, 0, 0, logo.Height * 72 / 300, 1.69 * 72, 10.0 * 72);
        page.PageObjects.Add(imageObject);
    }

    // Create fonts used for text objects
    PdfFont calibryBold = PdfFont.CreateFont(doc, "CalibriBold");
    // Insert text objects at 7.69"; 11.02" and font size is 25
    PdfTextObject textObject = PdfTextObject.Create("Sample text", 7.69f * 72, 11.02f * 72, calibryBold, 25);
    textObject.FillColor = FS_COLOR.Black;
    page.PageObjects.Add(textObject);

    // Step 5: Generate page content and save PDF file
    // argument: PDF file name
    page.GenerateContent();
    doc.Save(@"e:\site\sample_document.pdf", SaveFlags.NoIncremental);
}
public void CreatePDF()
{
    // Step 1: Initialize PDF library and create empty document
    // Return value: PdfDocument main class
    PdfCommon.Initialize();
    var doc = PdfDocument.CreateNew();  // Create a PDF document

    // Step 2: Add new page
    // Arguments: page width: 8.27", page height: 11.69", Unit of measure: inches
    //  The PDF unit of measure is point. There are 72 points in one inch.
    var page = doc.Pages.InsertPageAt(doc.Pages.Count, 8.27f * 72, 11.69f * 72);

    // Step 3: Add graphics and text contents to the page
    // Insert image from file using standard System.Drawing.Bitmap class
    using (PdfBitmap logo = PdfBitmap.FromFile(@"e:\site\assets\logo_square.png"))
    {
        PdfImageObject imageObject = PdfImageObject.Create(doc, logo, 0, 0);
        //image resolution is 300 DPI and location is 1.69 x 10.0 inches.
        imageObject.Matrix = new FS_MATRIX(logo.Width * 72 / 300, 0, 0, logo.Height * 72 / 300, 1.69 * 72, 10.0 * 72);
        page.PageObjects.Add(imageObject);
    }

    // Create fonts used for text objects
    PdfFont calibryBold = PdfFont.CreateFont(doc, "CalibriBold");
    // Insert text objects at 7.69"; 11.02" and font size is 25
    PdfTextObject textObject = PdfTextObject.Create("Sample text", 7.69f * 72, 11.02f * 72, calibryBold, 25);
    textObject.FillColor = FS_COLOR.Black;
    page.PageObjects.Add(textObject);

    // Step 5: Generate page content and save PDF file
    // argument: PDF file name
    page.GenerateContent();
    doc.Save(@"e:\site\sample_document.pdf", SaveFlags.NoIncremental);
}
Public Sub CreatePDF()
	' Step 1: Initialize PDF library and create empty document
	' Return value: PdfDocument main class
	PdfCommon.Initialize()
	Dim doc = PdfDocument.CreateNew() ' Create a PDF document

	' Step 2: Add new page
	' Arguments: page width: 8.27", page height: 11.69", Unit of measure: inches
	'  The PDF unit of measure is point. There are 72 points in one inch.
	Dim page = doc.Pages.InsertPageAt(doc.Pages.Count, 8.27F * 72, 11.69F * 72)

	' Step 3: Add graphics and text contents to the page
	' Insert image from file using standard System.Drawing.Bitmap class
	Using logo As PdfBitmap = PdfBitmap.FromFile("e:\site\assets\logo_square.png")
		Dim imageObject As PdfImageObject = PdfImageObject.Create(doc, logo, 0, 0)
		'image resolution is 300 DPI and location is 1.69 x 10.0 inches.
		imageObject.Matrix = New FS_MATRIX(logo.Width * 72 \ 300, 0, 0, logo.Height * 72 \ 300, 1.69 * 72, 10.0 * 72)
		page.PageObjects.Add(imageObject)
	End Using

	' Create fonts used for text objects
	Dim calibryBold As PdfFont = PdfFont.CreateFont(doc, "CalibriBold")
	' Insert text objects at 7.69"; 11.02" and font size is 25
	Dim textObject As PdfTextObject = PdfTextObject.Create("Sample text", 7.69F * 72, 11.02F * 72, calibryBold, 25)
	textObject.FillColor = FS_COLOR.Black
	page.PageObjects.Add(textObject)

	' Step 5: Generate page content and save PDF file
	' argument: PDF file name
	page.GenerateContent()
	doc.Save("e:\site\sample_document.pdf", SaveFlags.NoIncremental)
End Sub
VB   C#

El resultado es el siguiente:

Comparación entre IronPDF y PDFium.NET, Figura 7: PDFium.NET genera PDF

Si comparamos el resultado de los proyectos IronPDF y PDFium, podemos ver claramente que el resultado basado en la biblioteca de clases IronPDF ofrece un mejor resultado utilizando el renderizado HTML y sin ni siquiera escalar el tamaño de la imagen. Por otro lado, PDFium.NET da un resultado similar a IronPDF, pero sólo con el escalado de la imagen. Si omitimos esta línea del código

imageObject.Matrix = new FS_MATRIX(logo.Width * 72 / 300, 0, 0, logo.Height * 72 / 300, 1.69 * 72, 10.0 * 72);
imageObject.Matrix = new FS_MATRIX(logo.Width * 72 / 300, 0, 0, logo.Height * 72 / 300, 1.69 * 72, 10.0 * 72);
imageObject.Matrix = New FS_MATRIX(logo.Width * 72 \ 300, 0, 0, logo.Height * 72 \ 300, 1.69 * 72, 10.0 * 72)
VB   C#

La salida será:

Comparación entre IronPDF y PDFium.NET, Figura 8: Salida de PDFium.NET sin escalado de imágenes PDF

4. Crear PDF a partir de varias imágenes

4.1. Utilización de IronPDF

Fusionar dos o más PDF es fácil en IronPDF. Con el método Combinar, puede combinar dos o más archivos PDF en los que cada archivo esté separado por una coma. El código es el siguiente:

using IronPdf;

var html_a = @"<p> [PDF_A] </p>
                <p> [PDF_A] 1st Page </p>
                <div style = 'page-break-after: always;' ></div>
                <p> [PDF_A] 2nd Page</p>";

var html_b = @"<p> [PDF_B] </p>
                <p> [PDF_B] 1st Page </p>
                <div style = 'page-break-after: always;' ></div>
                <p> [PDF_B] 2nd Page</p>";

var Renderer = new IronPDF.ChromePdfRenderer();

var pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a);
var pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b);
var merged = IronPDF.PdfDocument.Merge(pdfdoc_a, pdfdoc_b);

merged.SaveAs("Merged.PDF");
using IronPdf;

var html_a = @"<p> [PDF_A] </p>
                <p> [PDF_A] 1st Page </p>
                <div style = 'page-break-after: always;' ></div>
                <p> [PDF_A] 2nd Page</p>";

var html_b = @"<p> [PDF_B] </p>
                <p> [PDF_B] 1st Page </p>
                <div style = 'page-break-after: always;' ></div>
                <p> [PDF_B] 2nd Page</p>";

var Renderer = new IronPDF.ChromePdfRenderer();

var pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a);
var pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b);
var merged = IronPDF.PdfDocument.Merge(pdfdoc_a, pdfdoc_b);

merged.SaveAs("Merged.PDF");
Imports IronPdf

Private html_a = "<p> [PDF_A] </p>
                <p> [PDF_A] 1st Page </p>
                <div style = 'page-break-after: always;' ></div>
                <p> [PDF_A] 2nd Page</p>"

Private html_b = "<p> [PDF_B] </p>
                <p> [PDF_B] 1st Page </p>
                <div style = 'page-break-after: always;' ></div>
                <p> [PDF_B] 2nd Page</p>"

Private Renderer = New IronPDF.ChromePdfRenderer()

Private pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a)
Private pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b)
Private merged = IronPDF.PdfDocument.Merge(pdfdoc_a, pdfdoc_b)

merged.SaveAs("Merged.PDF")
VB   C#

4.2. Uso de PDFium.NET

Con PDFium.NET, no sólo puede combinar varios archivos PDF en un único archivo, sino que también puede seleccionar determinadas páginas específicas de los archivos de origen y combinarlas en un documento PDF.

El siguiente código muestra cómo hacerlo utilizando el método ImportPages.

public void MergePDF()
{
    //Initialize the SDK library.
    PdfCommon.Initialize();

    //Open and load a PDF document in which other files will be merged 
    using (var mainDoc = PdfDocument.Load(@"c:\test001.pdf")) // C# Read source PDF File #1
    {
        //Open one PDF document.
        using (var doc = PdfDocument.Load(@"c:\doc1.pdf")) //Read PDF File #2
        {
            //Import all pages from document
            mainDoc.Pages.ImportPages(
                doc,
                string.Format("1-{0}", doc.Pages.Count),
                mainDoc.Pages.Count
                );
        }

        //Open another PDF document.
        using (var doc = PdfDocument.Load(@"c:\doc2.pdf"))
        {
            //Import all pages from document
            mainDoc.Pages.ImportPages(
                doc,
                string.Format("1-{0}", doc.Pages.Count),
                mainDoc.Pages.Count
                );
        }
        mainDoc.Save(@"c:\ResultDocument.pdf", SaveFlags.NoIncremental);
    }
}
public void MergePDF()
{
    //Initialize the SDK library.
    PdfCommon.Initialize();

    //Open and load a PDF document in which other files will be merged 
    using (var mainDoc = PdfDocument.Load(@"c:\test001.pdf")) // C# Read source PDF File #1
    {
        //Open one PDF document.
        using (var doc = PdfDocument.Load(@"c:\doc1.pdf")) //Read PDF File #2
        {
            //Import all pages from document
            mainDoc.Pages.ImportPages(
                doc,
                string.Format("1-{0}", doc.Pages.Count),
                mainDoc.Pages.Count
                );
        }

        //Open another PDF document.
        using (var doc = PdfDocument.Load(@"c:\doc2.pdf"))
        {
            //Import all pages from document
            mainDoc.Pages.ImportPages(
                doc,
                string.Format("1-{0}", doc.Pages.Count),
                mainDoc.Pages.Count
                );
        }
        mainDoc.Save(@"c:\ResultDocument.pdf", SaveFlags.NoIncremental);
    }
}
Public Sub MergePDF()
	'Initialize the SDK library.
	PdfCommon.Initialize()

	'Open and load a PDF document in which other files will be merged 
	Using mainDoc = PdfDocument.Load("c:\test001.pdf") ' C# Read source PDF File #1
		'Open one PDF document.
		Using doc = PdfDocument.Load("c:\doc1.pdf") 'Read PDF File #2
			'Import all pages from document
			mainDoc.Pages.ImportPages(doc, String.Format("1-{0}", doc.Pages.Count), mainDoc.Pages.Count)
		End Using

		'Open another PDF document.
		Using doc = PdfDocument.Load("c:\doc2.pdf")
			'Import all pages from document
			mainDoc.Pages.ImportPages(doc, String.Format("1-{0}", doc.Pages.Count), mainDoc.Pages.Count)
		End Using
		mainDoc.Save("c:\ResultDocument.pdf", SaveFlags.NoIncremental)
	End Using
End Sub
VB   C#

5. Firmar digitalmente PDF

5.1. Utilización de IronPDF

Una de las funciones más importantes hoy en día es la firma digital de un documento PDF. IronPDF ofrece esta posibilidad. El código es el siguiente:

using IronPdf;

// Cryptographically sign an existing PDF in 1 line of code!
new IronPDF.Signing.PdfSignature("Iron.p12", "123456").SignPdfFile("any.pdf");

/***** Advanced example for more control *****/

// Step 1. Create a PDF
var Renderer = new IronPdf.ChromePdfRenderer();
var doc = Renderer.RenderHtmlAsPDF("<h1>Testing 2048 bit digital security</h1>");

// Step 2. Create a Signature.
// You may create a .pfx or .p12 PDF signing certificate using Adobe Acrobat Reader.

var signature = new IronPDF.Signing.PdfSignature("Iron.pfx", "123456");

// Step 3. Handwritten signature graphic
signature.LoadSignatureImageFromFile("handwriting.png");

//Step 4. Sign the PDF with the PDFSignature. Multiple signing certificates may be used
doc.SignPdfWithDigitalSignature(signature);

//Step 4. The PDF is not signed until saved to file, stream or byte array.
doc.SaveAs("signed.pdf"); 
using IronPdf;

// Cryptographically sign an existing PDF in 1 line of code!
new IronPDF.Signing.PdfSignature("Iron.p12", "123456").SignPdfFile("any.pdf");

/***** Advanced example for more control *****/

// Step 1. Create a PDF
var Renderer = new IronPdf.ChromePdfRenderer();
var doc = Renderer.RenderHtmlAsPDF("<h1>Testing 2048 bit digital security</h1>");

// Step 2. Create a Signature.
// You may create a .pfx or .p12 PDF signing certificate using Adobe Acrobat Reader.

var signature = new IronPDF.Signing.PdfSignature("Iron.pfx", "123456");

// Step 3. Handwritten signature graphic
signature.LoadSignatureImageFromFile("handwriting.png");

//Step 4. Sign the PDF with the PDFSignature. Multiple signing certificates may be used
doc.SignPdfWithDigitalSignature(signature);

//Step 4. The PDF is not signed until saved to file, stream or byte array.
doc.SaveAs("signed.pdf"); 
Imports IronPdf

' Cryptographically sign an existing PDF in 1 line of code!
Call (New IronPDF.Signing.PdfSignature("Iron.p12", "123456")).SignPdfFile("any.pdf")

'''*** Advanced example for more control ****

' Step 1. Create a PDF
Dim Renderer = New IronPdf.ChromePdfRenderer()
Dim doc = Renderer.RenderHtmlAsPDF("<h1>Testing 2048 bit digital security</h1>")

' Step 2. Create a Signature.
' You may create a .pfx or .p12 PDF signing certificate using Adobe Acrobat Reader.

Dim signature = New IronPDF.Signing.PdfSignature("Iron.pfx", "123456")

' Step 3. Handwritten signature graphic
signature.LoadSignatureImageFromFile("handwriting.png")

'Step 4. Sign the PDF with the PDFSignature. Multiple signing certificates may be used
doc.SignPdfWithDigitalSignature(signature)

'Step 4. The PDF is not signed until saved to file, stream or byte array.
doc.SaveAs("signed.pdf")
VB   C#

PDFium.NET carece de esta capacidad para firmar digitalmente documentos PDF.

6. Precios y licencias

Precios y licencias de IronPDF

IronPDF es de uso gratuito para el desarrollo de aplicaciones sencillas y puede adquirirse una licencia de uso comercial en cualquier momento. Ofrece licencias para un solo proyecto, para un solo desarrollador, para agencias y para organizaciones multinacionales. También ofrece licencias de redistribución SaaS y OEM y asistencia.

Todas las licencias de IronPDF están disponibles con una garantía de devolución del dinero de 30 días, además de un año de soporte y actualizaciones del software. Y lo que es más importante, es una licencia perpetua(compra única). El paquete Lite está disponible. Los productos IronPDF no conllevan ninguna cuota periódica. Encontrará información más detallada sobre las licencias disponibles en la páginaPágina de licencias de IronPDF.

Comparación entre IronPDF y PDFium.NET, Figura 9: Licencia de IronPDF

Precios y licencias de PDFium.NET

PDFium.NET ofrece una licencia perpetua. Puede utilizar esta versión del SDK compatible con su clave de registro para siempre. Sin embargo, la clave sólo funciona con algunas versiones específicas del SDK que dependen de la fecha de compra o renovación de la licencia. Puede instalar cualquier nueva versión del producto gratis, siempre que haya sido lanzada antes o en el plazo de un año desde su compra. PDFium.NET también ofrece 3 paquetes de licencia diferentes:

  • La licencia para un solo proyecto está diseñada para desarrolladores individuales y pequeños equipos que trabajan en un solo proyecto. A partir de 720 $.
  • La licencia de organización está diseñada para equipos de desarrollo que trabajan en varios proyectos.
  • La licencia de desarrollador individual está diseñada para desarrolladores individuales y autónomos que trabajan para varios clientes.

    Puede visitar la páginaPágina de compra de PDFium.NET para conocer todos los precios.

Conclusión

La biblioteca IronPDF es una biblioteca fácil de usar para crear documentos PDF sin ninguna API complicada. El motor de cromo incorporado permite una conversión de HTML a PDF perfecta con tipos de documentos estándar abiertos como HTML, JS, CSS, JPG, PNG, GIF y SVG.

PDFium.NET SDK es una biblioteca de clases .NET diseñada para satisfacer las necesidades más comunes de un desarrollador por un precio más que asequible. Con PDFium.NET SDK, sus aplicaciones podrán mostrar y manipular documentos PDF a las mil maravillas. Su API especial de edición de objetos de página es lo que hace que esta biblioteca sea especialmente potente.

Las licencias de PDFium.NET vienen en tres ediciones, como se ha mencionado anteriormente. La licencia de proyecto único ofrece facilidades para un solo desarrollador y hasta tres desarrolladores a partir de 720 y 900 dólares respectivamente. Es algo más barato que IronPDF, que tiene una versión Lite a partir de un precio inferior.

IronPDF ofrece una licencia ilimitada a un precio competitivo. En cambio, PDFium.NET tiene una licencia organizativa para un número ilimitado de desarrolladores por un precio superior. Por el contrario, IronPDF ofrece una licencia profesional que puede ser utilizada por 10 desarrolladores, y cuesta aproximadamente la mitad de la licencia equivalente de PDFium.NET para 10 desarrolladores.

En los ejemplos anteriores, ha visto cómo IronPDF crea y modifica documentos PDF utilizando muchas menos líneas de código en comparación con PDFium.NET. Esto ayuda a aliviar la carga de trabajo del desarrollador y le permite ser más productivo. IronPDF proporciona múltiples métodos para convertir de casi cualquier formato a PDF. En cambio, PDFium.NET solo ofrece unos pocos métodos como imágenes y texto a PDF.

Ahora puedeadquiera todas las bibliotecas de productos de Iron Software por sólo el precio de dos de ellos. Además, hay unprueba gratuita para probar la funcionalidad.

< ANTERIOR
itext7 Extraer texto de PDF vs IronPDF (Tutorial de ejemplo de código)
SIGUIENTE >
Generador HTML a PDF de Telerik vs IronPDF

¿Listo para empezar? Versión: 2024.12 acaba de salir

Descarga gratuita de NuGet Descargas totales: 11,622,374 Ver licencias >