COMPARACIóN DE PRODUCTOS

Comparación entre Compdfkit e IronPDF

Actualizado agosto 13, 2024
Compartir:

PDF, abreviatura de Portable Document Format, es un tipo de archivo creado por Adobe para garantizar la uniformidad en el intercambio de documentos. Este formato mantiene la coherencia del diseño, el texto y las imágenes en distintos dispositivos y sistemas operativos. Los PDF son conocidos por su seguridad, sus funciones interactivas y su tamaño compacto, lo que los hace perfectos para distribuir documentos sin alterar el contenido original.

Para los desarrolladores que utilizan C#, las bibliotecas PDF ofrecen soluciones PDF para trabajar con archivos PDF. Estas bibliotecas permiten crear documentos, modificar contenidos y extraer textos e imágenes. También admiten funciones como la gestión de formularios, la firma digital y la compatibilidad entre distintas plataformas. Diseñadas para un rendimiento óptimo, estas bibliotecas facilitan el procesamiento eficaz de PDF.

En este artículo, compararemos dos bibliotecas PDF de C#: IronPDF y ComPDFKit. Esta comparación cubrirá características, funcionalidad, ejemplos de código y licencias. Si examina estos aspectos, podrá determinar qué biblioteca se adapta mejor a sus proyectos relacionados con PDF.

1. SDK de ComPDFKit

Comparación entre Compdfkit e IronPDF: Figura 1 - Página de inicio del SDK ComPDFKIT

ComPDFKit PDF SDK es un robusto SDK para PDF en C# que permite a los desarrolladores integrar completas funcionalidades PDF en sus aplicaciones. Esta biblioteca es compatible con una amplia gama de funciones PDF necesarias para manejar documentos PDF mediante programación. Está diseñado para su uso en diversos entornos, como plataformas web, de escritorio y móviles, lo que lo convierte en una herramienta versátil para los desarrolladores que trabajan en proyectos multiplataforma. Tiene múltiples funciones en la solución de ejemplo. Puede seleccionar cualquier función relacionada de ComPDFKit PDF SDK que desee probar.

1.1 Principales características de ComPDFKit

  1. Visualización de PDF: ComPDFKit proporciona un potente visor de PDF que permite a los usuarios ver documentos PDF con alta fidelidad. El visor permite desplazarse, ampliar y navegar sin problemas, lo que garantiza una experiencia de usuario fluida.

  2. Anotaciones: La biblioteca incluye herramientas para integrar anotaciones en PDF sin problemas. Los usuarios pueden resaltar texto, añadir comentarios y crear diversos tipos de anotaciones, esenciales para los flujos de trabajo colaborativos.

  3. Manejo de formularios: La biblioteca ofrece un amplio soporte para formularios interactivos. Los desarrolladores pueden crear, rellenar y extraer datos de formularios PDF, por lo que resulta ideal para aplicaciones que requieren el procesamiento de formularios.

  4. Edición de PDF: ComPDFKit permite amplias capacidades de edición de PDF, incluyendo la modificación de texto, imágenes y otros contenidos dentro de los archivos PDF. Esta función es útil para aplicaciones que necesitan actualizar o personalizar documentos PDF existentes.

  5. Conversión: La biblioteca admite la conversión de archivos PDF a y desde varios formatos, como Word, Excel, PowerPoint e imágenes. Esta flexibilidad es vital para las aplicaciones que necesitan transformar contenidos PDF para distintos usos.

  6. Seguridad: ComPDFKit incluye sólidas funciones de seguridad, como el cifrado y la gestión de permisos. Los desarrolladores pueden asegurar los documentos PDF para proteger la información confidencial de accesos no autorizados.

  7. Reconocimiento óptico de caracteres (OCR): La biblioteca incluye funciones de OCR para convertir documentos escaneados en PDF editables y con capacidad de búsqueda. Esta función es esencial para digitalizar documentos en papel y hacerlos accesibles electrónicamente.

    ComPDFKit proporciona un amplio conjunto de API que agilizan la integración de estas funciones en diversas aplicaciones. Su amplia documentación y asistencia lo convierten en una excelente opción para los desarrolladores que deseen incorporar funciones avanzadas de PDF a sus proyectos

2. Biblioteca IronPDF

Comparación entre Compdfkit e IronPDF: Figura 2 - Página de inicio de IronPDF

IronPDF es una versátil biblioteca PDF para .NET que permite a los desarrolladores crear, editar y gestionar documentos PDF utilizando C#. Proporciona funciones PDF completas. Está diseñado para simplificar la generación de PDFs a partir de HTML, CSS, JavaScript y varios formatos de imagen. Esto la convierte en una herramienta ideal para los desarrolladores que deseen integrar sólidas funciones PDF en sus aplicaciones .NET.

Características principales de IronPDF

  1. Conversión de HTML a PDF: IronPDF destaca en la conversión de contenidos HTML, CSS y JavaScript en documentos PDF de alta calidad. Esta función admite generar PDF a partir de cadenas HTMLuRL, formularios web ASPX y vistas MVC, lo que la convierte en una solución flexible para diversos contenidos basados en web.

  2. Edición de PDF: La biblioteca ofrece amplias funciones de edición, como añadir, copiar y eliminar páginas, combinar y dividir PDF y manipular texto e imágenes. Los desarrolladores también pueden añadir encabezados, pies de página, marcas de agua y firmas digitales a los documentos PDF.

  3. Manejo de formularios: IronPDF permite crear formularios inteligentes y rellenar formularios PDF mediante programación. Esta función es esencial para las aplicaciones que requieren la generación dinámica de formularios y la extracción de datos de los formularios enviados por los usuarios.

  4. Funciones de seguridad: IronPDF ofrece sólidas opciones de seguridad, como establecer contraseñas y permisos, cifrar documentos y añadir firmas digitales. Estas funciones garantizan que la información confidencial de los documentos PDF esté protegida frente a accesos no autorizados.

  5. OCR y extracción de datos: La biblioteca incluye Reconocimiento Óptico de Caracteres (OCR) que permite convertir documentos escaneados en PDF editables y con capacidad de búsqueda. Además, IronPDF puede extraer texto, imágenes y otros datos de PDF existentes, lo que facilita la reutilización y el análisis de contenidos.

  6. Conversión de imágenes: IronPDF admite la conversión de varios formatos de imagen, incluidos JPG, PNG, GIF, BMP y SVG, en documentos PDF. También ofrece la posibilidad de representar páginas PDF como imágenes, lo que resulta útil para aplicaciones que requieren previsualizaciones visuales del contenido PDF.

  7. Compatibilidad multiplataforma: IronPDF es compatible con múltiples plataformas .NET, incluidas .NET Core, .NET Framework y .NET Standard. Admite la implementación en Windows, Linux, macOS y Azure, lo que la convierte en una opción versátil para los desarrolladores que trabajan en diversos entornos.

  8. Optimización del rendimiento: La librería está diseñada para un alto rendimiento, con soporte para multihilo y operaciones asíncronas. Esto garantiza que las tareas de procesamiento de PDF se ejecuten con eficacia, incluso en aplicaciones con grandes cargas de trabajo.

  9. Documentación y soporte completos: IronPDF proporciona documentación detallada y numerosos ejemplos de código, lo que facilita a los desarrolladores la puesta en marcha y la implementación de sus funciones. Además, ofrece asistencia técnica para solucionar cualquier problema que pueda surgir durante el desarrollo.

3. Crear un nuevo proyecto de Visual Studio

Antes de profundizar en los ejemplos de codificación, vamos a crear un nuevo proyecto de Visual Studio. Aquí tienes una guía paso a paso para configurar una aplicación de consola de C# en Visual Studio.

Paso 1: Instale Visual Studio (si no lo tiene ya instalado)

Visual Studio es el mejor IDE para proyectos en C#. Si aún no lo ha descargado e instalado, descárguelo desde aquí enlace e instalarlo.

Paso 2: Abra Visual Studio

Después de instalar Visual Studio, ábrelo. Si tienes Visual Studio Community, puedes iniciar sesión o continuar sin iniciar sesión.

Paso 3: Crear un nuevo proyecto

  1. Haga clic en "Crear un nuevo proyecto" o vaya a Archivo > Nuevo > Proyecto.

    Comparación entre Compdfkit e IronPDF: Figura 3 - Comparación entre IronPDF y DinkToPdf: Figura 1

  2. Busque la aplicación Consola en la barra de búsqueda y seleccione la aplicación Consola en los resultados de la búsqueda.

    Comparación entre Compdfkit e IronPDF: Figura 4 - Comparación entre IronPDF y DinkToPdf: Figura 2 - En el cuadro de diálogo Crear un nuevo proyecto, seleccione Aplicación de consola C# y haga clic en Siguiente.

  3. Elija la plantilla de proyecto que mejor se adapte a sus necesidades. Para una aplicación de consola básica, puede elegir "Aplicación de consola (.NET Framework)."

  4. Indique el nombre y la ubicación de almacenamiento del proyecto. También puede establecer el nombre de la solución.

  5. Elija el marco de trabajo de destino adecuado y haga clic en "Crear" para generar su proyecto.

4. Instalar IronPDF

La integración de IronPDF en su proyecto puede realizarse a través de varios métodos, cada uno de los cuales proporciona una experiencia de configuración perfecta.

  1. Para utilizar el gestor de paquetes NuGet de Visual Studio, empieza por hacer clic con el botón derecho en "Dependencias" en tu solución y selecciona "Gestionar paquetes NuGet." En la pestaña "Examinar", busque "IronPDF" e instale la última versión para su proyecto.

    Comparación entre Compdfkit e IronPDF: Figura 5 - Búsqueda de IronPDF mediante el gestor de paquetes NuGet

  2. Como alternativa, puede utilizar la consola del gestor de paquetes NuGet. Para abrir la consola, vaya a Herramientas > Gestor de paquetes NuGet > Consola del gestor de paquetes en Visual Studio. Una vez abierta la consola, ejecute el comando:
Install-Package IronPdf
Install-Package IronPdf
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package IronPdf
VB   C#

Este enfoque proporciona una forma rápida de instalar la biblioteca utilizando una simple línea de comandos.

Comparación entre Compdfkit e IronPDF: Figura 6 - Usando la línea de comandos introduzca el comando anterior

  1. Si prefiere descargar directamente desde el sitio web de NuGet, visite la página Página del paquete IronPDF NuGet. Desde allí, puede descargar el archivo del paquete. Tras la descarga, haga doble clic en el archivo para añadirlo al proyecto y, a continuación, vuelva a cargar la solución para completar la integración.

  2. Otro método consiste en descargar directamente la última versión desde la página Sitio web oficial de IronPDF. Así se asegura de tener el paquete más actualizado. Siga las instrucciones proporcionadas en el sitio web para integrar manualmente IronPDF en su proyecto de Visual Studio.

    Siguiendo cualquiera de estos métodos, podrá integrar IronPDF de forma eficaz en su proyecto .NET.

5. Instalar ComPDFKit C#

Hay dos métodos principales para añadir ComPDFKit a su proyecto: utilizando el gestor de paquetes NuGet o un paquete local.

5.1 Uso del gestor de paquetes NuGet

  1. Abra el Gestor de paquetes NuGet: En el Explorador de soluciones, haz clic con el botón derecho en "Referencias" y selecciona "Administrar paquetes NuGet."

    1. Buscar e instalar: Busca "ComPDFKit" en el gestor de paquetes NuGet. Seleccione el paquete adecuado (por ejemplo, ComPDFKit.NetFramework o ComPDFKit.Conversion.NetFramework) y haz clic en "Instalar"

    Comparación entre Compdfkit e IronPDF: Figura 7 - Búsqueda de ComPDFKit mediante el gestor de paquetes NuGet

  2. Verifique la instalación: Asegúrese de que el paquete aparece en "Referencias" en el Explorador de soluciones.

5.2 Utilizar un paquete local

  1. Descargar paquete: Obtenga el archivo ComPDFKit.NetFramework.nupkg del sitio web oficial de ComPDFKit.

    1. Configure NuGet Source: Crea o edita un archivo nuget.config en el directorio de tu proyecto para incluir la ruta al paquete local.
<?xml version="1.0" encoding="utf-8"?>
    <configuration>
        <packageSources>
            <add key="ComPDFKitSource" value="path\to\directoryContainingNupkg" />
        </packageSources>
    </configuration>
<?xml version="1.0" encoding="utf-8"?>
    <configuration>
        <packageSources>
            <add key="ComPDFKitSource" value="path\to\directoryContainingNupkg" />
        </packageSources>
    </configuration>
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <add key="ComPDFKitSource" value="path" + vbTab + "o\directoryContainingNupkg" /> </packageSources> </configuration>
VB   C#
  1. Instalar paquete local: Vuelva a abrir la solución en Visual Studio, vaya a "Administrar paquetes NuGet" y seleccione la fuente del paquete local. Instale el paquete ComPDFKit desde la fuente local.

5.3 Aplicar la clave de licencia

  1. Obtener licencia: Póngase en contacto con el equipo de ComPDFKit para obtener una licencia de prueba o completa.

    1. Aplicar la Licencia en Código:
bool LicenseVerify()
    {
        if (!CPDFSDKVerifier.LoadNativeLibrary())
            return false;
        LicenseErrorCode verifyResult = CPDFSDKVerifier.LicenseVerify("input your license here");
        return (verifyResult == LicenseErrorCode.E_LICENSE_SUCCESS);
    }
bool LicenseVerify()
    {
        if (!CPDFSDKVerifier.LoadNativeLibrary())
            return false;
        LicenseErrorCode verifyResult = CPDFSDKVerifier.LicenseVerify("input your license here");
        return (verifyResult == LicenseErrorCode.E_LICENSE_SUCCESS);
    }
Private Function LicenseVerify() As Boolean
		If Not CPDFSDKVerifier.LoadNativeLibrary() Then
			Return False
		End If
		Dim verifyResult As LicenseErrorCode = CPDFSDKVerifier.LicenseVerify("input your license here")
		Return (verifyResult = LicenseErrorCode.E_LICENSE_SUCCESS)
End Function
VB   C#

Añada este método al archivo principal de su aplicación para verificar la licencia.

Siguiendo estos pasos, podrá integrar con éxito ComPDFKit en su proyecto de C#.

6. HTML a PDF

Convertir páginas HTML a PDF es un requisito habitual en muchas aplicaciones, como la generación dinámica de informes, facturas o documentación a partir de contenidos web. Tanto IronPDF como ComPDFKit ofrecen soluciones sólidas para esta tarea, pero sus enfoques y capacidades difieren significativamente.

El proceso suele comenzar con la captura del contenido HTML, que puede ser estático o generado dinámicamente. A continuación, el HTML capturado se procesa para aplicar las hojas de estilo asociadas (CSS) y guiones (JavaScript)que garantiza que el PDF final refleje la apariencia y el comportamiento de la página web original.

6.1. Convertir páginas HTML a PDF con IronPDF

IronPDF es una biblioteca versátil para convertir HTML a PDF en C#. Utiliza un motor de renderizado basado en Chrome para garantizar un resultado de alta calidad. Este proceso consiste en convertir con precisión el contenido HTML, CSS y JavaScript al formato PDF. He aquí un ejemplo básico de cómo convertir una cadena HTML en un archivo PDF utilizando IronPDF:

using IronPdf;
using System;
class Program
{
    static void Main()
    {
        // Define your HTML string
        string htmlString = @"
                <h1>Hello, IronPDF!</h1>
                <p>This is a simple PDF created from an HTML string.</p>";
        var renderer = new ChromePdfRenderer();
        // Convert the HTML string to a PDF document
        PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlString);
        // Save the PDF document to a file
        string outputPath = "sample.pdf";
        pdf.SaveAs(outputPath);
        Console.WriteLine($"PDF created successfully and saved to {outputPath}");
    }
}
using IronPdf;
using System;
class Program
{
    static void Main()
    {
        // Define your HTML string
        string htmlString = @"
                <h1>Hello, IronPDF!</h1>
                <p>This is a simple PDF created from an HTML string.</p>";
        var renderer = new ChromePdfRenderer();
        // Convert the HTML string to a PDF document
        PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlString);
        // Save the PDF document to a file
        string outputPath = "sample.pdf";
        pdf.SaveAs(outputPath);
        Console.WriteLine($"PDF created successfully and saved to {outputPath}");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Comparación entre Compdfkit e IronPDF: Figura 8 - Ejemplo extraído del código anterior

Del mismo modo, puede crear archivos PDF a partir del archivo HTML. Es muy útil porque a veces las cadenas HTML son demasiado grandes y necesitas añadir CSS con ellas. IronPDF ayuda proporcionando un método para convertir directamente archivos HTML junto con sus archivos CSS y JS a documentos PDF.

using IronPdf;
using System;
class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        // Convert the HTML string to a PDF document
        PdfDocument pdf = renderer.RenderHtmlFileAsPdf("index.html");
        // Save the PDF document to a file
        string outputPath = "HTML File.pdf";
        pdf.SaveAs(outputPath);
        Console.WriteLine($"PDF created successfully and saved to {outputPath}");
    }
}
using IronPdf;
using System;
class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        // Convert the HTML string to a PDF document
        PdfDocument pdf = renderer.RenderHtmlFileAsPdf("index.html");
        // Save the PDF document to a file
        string outputPath = "HTML File.pdf";
        pdf.SaveAs(outputPath);
        Console.WriteLine($"PDF created successfully and saved to {outputPath}");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Comparación entre Compdfkit e IronPDF: Figura 9 - Ejemplo de salida del código anterior utilizando IronPDF para convertir un HTML en PDF

IronPDF también admite la conversión de URL a PDF y de archivos HTML a PDF. Estas funciones son muy útiles en programas en los que la gestión de documentos es importante. IronPDF ofrece una amplia gama de funciones para la creación y manipulación de PDF, lo que lo convierte en una potente herramienta para desarrolladores.

6.2. HTML a PDF usando ComPDFKit C#

ComPDFKit no admite directamente la conversión de HTML a PDF en su SDK de C#. En su lugar, ofrece una API independiente específica para este fin. Esta API le permite realizar conversiones de HTML a PDF haciendo peticiones HTTP a su servicio.

Para utilizar la API de HTML a PDF de ComPDFKit, siga estos pasos:

  1. Enviar contenido HTML: Cree una solicitud HTTP POST al punto final de la API de ComPDFKit con su contenido HTML.

  2. Recibir salida PDF: La API procesa el contenido HTML y devuelve el archivo PDF generado.

    He aquí un ejemplo de cómo estructurar una solicitud de este tipo en C#:

using System;
using System.Net.Http;
using System.Threading.Tasks;
public class HtmlToPdfExample
{
    public static async Task ConvertHtmlToPdfAsync()
    {
        using (var client = new HttpClient())
        {
            var content = new StringContent("<h1>Hello World</h1>");
            var response = await client.PostAsync("https://api.compdfkit.com/html-to-pdf", content);
            var pdfBytes = await response.Content.ReadAsByteArrayAsync();
            System.IO.File.WriteAllBytes("output.pdf", pdfBytes);
        }
    }
}
using System;
using System.Net.Http;
using System.Threading.Tasks;
public class HtmlToPdfExample
{
    public static async Task ConvertHtmlToPdfAsync()
    {
        using (var client = new HttpClient())
        {
            var content = new StringContent("<h1>Hello World</h1>");
            var response = await client.PostAsync("https://api.compdfkit.com/html-to-pdf", content);
            var pdfBytes = await response.Content.ReadAsByteArrayAsync();
            System.IO.File.WriteAllBytes("output.pdf", pdfBytes);
        }
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Es sólo una demostración de que podemos utilizar API como esta en el programa C#. En la documentación de ComPDFKit no hay ninguna forma específica de utilizarlo para C#.

7. Marca de agua en PDF

Poner una marca de agua a un PDF es una práctica esencial por muchas razones. Ayuda a proteger la integridad del documento, afirma la propiedad y añade una capa de seguridad. Las marcas de agua pueden ser textos, logotipos o imágenes que aparecen en el fondo o en el primer plano de un documento. Impiden el uso, la copia y la distribución no autorizados de los contenidos. Además, las marcas de agua pueden transmitir información importante como el estado del documento (por ejemplo: "Confidencial", "Borrador", "Aprobado") o la identidad del creador

7.1 Marca de agua con IronPDF

IronPDF ofrece una forma sencilla de añadir marcas de agua a documentos PDF mediante programación. Esta funcionalidad está integrada en la biblioteca, lo que permite a los desarrolladores aplicar marcas de agua mediante código C#.

using IronPdf;
using IronPdf.Editing;
License.LicenseKey = "License-Code";
string watermarkHtml = @"
<img style='width: 500px;' src=""C:\Users\Tayyab Ali\Desktop\watermark.png"">
<h1>IronPDF Watermark</h1>";
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>It's a PDF with a watermark</h1>");
// Apply watermark with 45 degrees rotation and 70% opacity
pdf.ApplyWatermark(watermarkHtml, rotation: 30, opacity: 50);
pdf.SaveAs("f://Confedential.pdf");
using IronPdf;
using IronPdf.Editing;
License.LicenseKey = "License-Code";
string watermarkHtml = @"
<img style='width: 500px;' src=""C:\Users\Tayyab Ali\Desktop\watermark.png"">
<h1>IronPDF Watermark</h1>";
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>It's a PDF with a watermark</h1>");
// Apply watermark with 45 degrees rotation and 70% opacity
pdf.ApplyWatermark(watermarkHtml, rotation: 30, opacity: 50);
pdf.SaveAs("f://Confedential.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Comparación entre Compdfkit e IronPDF: Figura 10 - Ejemplo de la salida de código que muestra la marca de agua añadida con IronPDF

En este ejemplo, se utiliza la clase ChromePdfRenderer para crear un PDF a partir de una cadena HTML. A continuación, se utiliza el método ApplyWatermark para aplicar una marca de agua. La marca de agua consiste en una imagen y un título, ambos definidos en la cadena watermarkHtml. El parámetro rotación se fija en 30 grados, y la opacidad en 50%, para que la marca de agua sea visible pero no destaque sobre el contenido principal. El PDF resultante se guarda en una ruta especificada.

7.2 Marca de agua con ComPDFKit

ComPDFKit proporciona una funcionalidad completa para añadir marcas de agua a documentos PDF directamente en C#. Esto puede hacerse mediante programación utilizando los métodos de la biblioteca ComPDFKit. He aquí un ejemplo de cómo añadir una marca de agua de texto utilizando ComPDFKit:

static private bool AddTextWatermark(CPDFDocument document)
{
    CPDFWatermark watermark = document.InitWatermark(C_Watermark_Type.WATERMARK_TYPE_TEXT);
    watermark.SetText("test");
    watermark.SetFontName("Helvetica"); 
    watermark.SetPages("0-3");
    byte[] color = { 255, 0, 0 };
    watermark.SetTextRGBColor(color);
    watermark.SetScale(2);
    watermark.SetRotation(0);
    watermark.SetOpacity(120);
    watermark.SetVertalign(C_Watermark_Vertalign.WATERMARK_VERTALIGN_CENTER);
    watermark.SetHorizalign(C_Watermark_Horizalign.WATERMARK_HORIZALIGN_CENTER);
    watermark.SetVertOffset(0);
    watermark.SetHorizOffset(0);
    watermark.SetFront(true);
    watermark.SetFullScreen(true);
    watermark.SetVerticalSpacing(10);
    watermark.SetHorizontalSpacing(10);
    watermark.CreateWatermark();
    string path = outputPath + "\\AddTextWatermarkTest.pdf";
    if (!document.WriteToFilePath(path))
    {
        return false;
    }
    Console.WriteLine("Browse the changed file in " + path);
    return true;
}
CPDFDocument document = CPDFDocument.InitWithFilePath("SamplePDF.pdf");
if (AddTextWatermark(document))
{
    Console.WriteLine("Add text watermark done.");
}
else
{
    Console.WriteLine("Add text watermark failed.");
}
static private bool AddTextWatermark(CPDFDocument document)
{
    CPDFWatermark watermark = document.InitWatermark(C_Watermark_Type.WATERMARK_TYPE_TEXT);
    watermark.SetText("test");
    watermark.SetFontName("Helvetica"); 
    watermark.SetPages("0-3");
    byte[] color = { 255, 0, 0 };
    watermark.SetTextRGBColor(color);
    watermark.SetScale(2);
    watermark.SetRotation(0);
    watermark.SetOpacity(120);
    watermark.SetVertalign(C_Watermark_Vertalign.WATERMARK_VERTALIGN_CENTER);
    watermark.SetHorizalign(C_Watermark_Horizalign.WATERMARK_HORIZALIGN_CENTER);
    watermark.SetVertOffset(0);
    watermark.SetHorizOffset(0);
    watermark.SetFront(true);
    watermark.SetFullScreen(true);
    watermark.SetVerticalSpacing(10);
    watermark.SetHorizontalSpacing(10);
    watermark.CreateWatermark();
    string path = outputPath + "\\AddTextWatermarkTest.pdf";
    if (!document.WriteToFilePath(path))
    {
        return false;
    }
    Console.WriteLine("Browse the changed file in " + path);
    return true;
}
CPDFDocument document = CPDFDocument.InitWithFilePath("SamplePDF.pdf");
if (AddTextWatermark(document))
{
    Console.WriteLine("Add text watermark done.");
}
else
{
    Console.WriteLine("Add text watermark failed.");
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Comparación entre Compdfkit e IronPDF: Figura 11 - Ejemplo anterior de la salida de código que muestra la marca de agua añadida utilizando ComPDFKit

En este ejemplo, la clase CPDFDocument se utiliza para abrir un documento PDF existente. El método AddTextWatermark inicializa una marca de agua de texto utilizando el método InitWatermark. Se establecen varias propiedades de la marca de agua, como el contenido del texto, la fuente, el color, la escala, la rotación, la opacidad, la alineación y el espaciado. A continuación, se crea la marca de agua y se aplica a las páginas especificadas del documento PDF. Por último, el PDF modificado se guarda en una ruta especificada. Para integrar marcas de agua en imágenes se necesitan distintos métodos.

8. PDFA

PDF/A es una versión normalizada de PDF diseñada para la conservación digital a largo plazo de documentos electrónicos. La conformidad de los documentos con PDF/A garantiza su visualización y reproducción fiables en el futuro. Esta sección explora cómo crear documentos compatibles con PDF/A utilizando dos bibliotecas populares: IronPDF y ComPDFKit.

8.1 PDFA con IronPDF

IronPDF simplifica el proceso de conversión de documentos PDF estándar a documentos compatibles con PDF/A. Con IronPDF, puede cargar fácilmente un PDF existente y guardarlo en un formato compatible con PDF/A.

using IronPdf;
using System;
class Program
{
    static void Main()
    {
        License.LicenseKey = "License-Key";
        PdfDocument pdf = PdfDocument.FromFile("Source.pdf");
        pdf.SaveAsPdfA("pdfa-compliant.pdf", PdfAVersions.PdfA3);
    }
}
using IronPdf;
using System;
class Program
{
    static void Main()
    {
        License.LicenseKey = "License-Key";
        PdfDocument pdf = PdfDocument.FromFile("Source.pdf");
        pdf.SaveAsPdfA("pdfa-compliant.pdf", PdfAVersions.PdfA3);
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

He aquí un breve resumen del proceso:

  1. Inicializar IronPDF: Comience importando la librería IronPDF y configurando su clave de licencia.

  2. Cargar el PDF: Utilice PdfDocument.FromFile para cargar su archivo PDF de origen.

  3. Convertir y guardar: Convierte el PDF cargado a PDF/A especificando la versión PDF/A deseada y guarda el documento resultante.

    Este enfoque directo hace de IronPDF una opción conveniente para manejar las conversiones PDF/A.

8.2 PDFA con ComPDFKit

ComPDFKit ofrece una solución sólida para convertir PDF al formato PDF/A. El proceso consiste en inicializar un documento PDF, definir la ruta de salida e invocar el método de conversión.

static public bool CovertToPDFA1a(CPDFDocument document)
{
    string convertToPDFA1aPath = outputPath + "\\ConvertToPDFA1aTest.pdf";
    if (!document.WritePDFAToFilePath(CPDFType.CPDFTypePDFA1a, convertToPDFA1aPath))
    {
        return false;
    }
    Console.WriteLine("Browse the changed file in " + convertToPDFA1aPath);
    return true;
}
CPDFDocument document = CPDFDocument.InitWithFilePath("CommonFivePage.pdf");
if (!Directory.Exists(outputPath))
{
    Directory.CreateDirectory(outputPath);
}
if (CovertToPDFA1a(document))
{
    Console.WriteLine("Convert to PDF/A-1a done.");
}
else
{
    Console.WriteLine("Convert to PDF/A-1a failed.");
}
static public bool CovertToPDFA1a(CPDFDocument document)
{
    string convertToPDFA1aPath = outputPath + "\\ConvertToPDFA1aTest.pdf";
    if (!document.WritePDFAToFilePath(CPDFType.CPDFTypePDFA1a, convertToPDFA1aPath))
    {
        return false;
    }
    Console.WriteLine("Browse the changed file in " + convertToPDFA1aPath);
    return true;
}
CPDFDocument document = CPDFDocument.InitWithFilePath("CommonFivePage.pdf");
if (!Directory.Exists(outputPath))
{
    Directory.CreateDirectory(outputPath);
}
if (CovertToPDFA1a(document))
{
    Console.WriteLine("Convert to PDF/A-1a done.");
}
else
{
    Console.WriteLine("Convert to PDF/A-1a failed.");
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

He aquí un resumen de los pasos:

  1. Inicializar el documento: Cargar el documento PDF utilizando CPDFDocument.InitWithFilePath.

  2. Configurar el directorio de salida: Asegúrese de que el directorio de salida existe o créelo si es necesario.

  3. Convertir a PDF/A: Utilice WritePDFAToFilePath con el tipo PDF/A especificado para realizar la conversión y guardar el archivo.

9. Firma digital

Las firmas digitales son esenciales para verificar la autenticidad e integridad de los documentos. Esta sección muestra cómo añadir firmas digitales a los archivos PDF utilizando IronPDF y ComPDFKit.

9.1 Firma digital de IronPDF

IronPDF proporciona una forma sencilla y eficaz de aplicar firmas digitales a documentos PDF.

using IronPdf;
using IronPdf.Signing;
class Program
{
    static void Main(string[] args)
    {
        var simpleSignature = new IronPdf.Signing.PdfSignature("MyCert.p12", "newpassword");
        simpleSignature.SignPdfFile("sample.pdf");
    }
}
using IronPdf;
using IronPdf.Signing;
class Program
{
    static void Main(string[] args)
    {
        var simpleSignature = new IronPdf.Signing.PdfSignature("MyCert.p12", "newpassword");
        simpleSignature.SignPdfFile("sample.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

El proceso implica:

  1. Inicializar IronPDF: Importa las librerías IronPDF necesarias.

  2. Crear una firma: Inicializa un objeto PdfSignature con el archivo de certificado y la contraseña.

  3. Firmar el PDF: Aplicar la firma al PDF mediante FirmarArchivo PDF.

    Este método garantiza que sus documentos PDF estén firmados de forma segura, lo que aumenta su credibilidad y seguridad.

9.2 Firma digital de CompDFKit

ComPDFKit ofrece una solución completa para crear firmas digitales con amplias opciones de personalización.

private static void CreateDigitalSignature(CPDFDocument document, string certificatePath, string password)
{
    Console.WriteLine("--------------------");
    Console.WriteLine("Create digital signature.");
    CPDFSignatureCertificate certificate = CPDFPKCS12CertHelper.GetCertificateWithPKCS12Path("Certificate.pfx", "ComPDFKit");
    CPDFPage page = document.PageAtIndex(0);
    CPDFSignatureWidget signatureField = page.CreateWidget(C_WIDGET_TYPE.WIDGET_SIGNATUREFIELDS) as CPDFSignatureWidget;
    signatureField.SetRect(new CRect(28, 420, 150, 370));
    signatureField.SetWidgetBorderRGBColor(new byte[] { 0, 0, 0 });
    signatureField.SetWidgetBgRGBColor(new byte[] { 150, 180, 210 });
    signatureField.UpdateAp();
    string name = GetGrantorFromDictionary(certificate.SubjectDict) + "\n";
    string date = DateTime.Now.ToString("yyyy.MM.dd HH:mm:ss");
    string reason = "I am the owner of the document.";
    string location = certificate.SubjectDict["C"];
    string DN = certificate.Subject;
    CPDFSignatureConfig signatureConfig = new CPDFSignatureConfig
    {
        Text = GetGrantorFromDictionary(certificate.SubjectDict),
        Content =
        "Name: " + name + "\n" +
        "Date: " + date + "\n" +
        "Reason: " + reason + " \n" +
        "Location: " + location + "\n" +
        "DN: " + DN + "\n",
        IsContentAlignLeft = false,
        IsDrawLogo = true,
        LogoBitmap = new Bitmap("Logo.png"),
        TextColor = new float[] { 0, 0, 0 },
        ContentColor = new float[] { 0, 0, 0 }
    };
    string filePath = outputPath + "\\" + document.FileName + "_Signed.pdf";
    signatureField.UpdataApWithSignature(signatureConfig);
    if (document.WriteSignatureToFilePath(signatureField,
        filePath,
        certificatePath, password,
        location,
        reason, CPDFSignaturePermissions.CPDFSignaturePermissionsNone))
    {
        Console.WriteLine("File saved in " + filePath);
        Console.WriteLine("Create digital signature done.");
    }
    else
    {
        Console.WriteLine("Create digital signature failed.");
    }
    Console.WriteLine("--------------------");
}
private static void CreateDigitalSignature(CPDFDocument document, string certificatePath, string password)
{
    Console.WriteLine("--------------------");
    Console.WriteLine("Create digital signature.");
    CPDFSignatureCertificate certificate = CPDFPKCS12CertHelper.GetCertificateWithPKCS12Path("Certificate.pfx", "ComPDFKit");
    CPDFPage page = document.PageAtIndex(0);
    CPDFSignatureWidget signatureField = page.CreateWidget(C_WIDGET_TYPE.WIDGET_SIGNATUREFIELDS) as CPDFSignatureWidget;
    signatureField.SetRect(new CRect(28, 420, 150, 370));
    signatureField.SetWidgetBorderRGBColor(new byte[] { 0, 0, 0 });
    signatureField.SetWidgetBgRGBColor(new byte[] { 150, 180, 210 });
    signatureField.UpdateAp();
    string name = GetGrantorFromDictionary(certificate.SubjectDict) + "\n";
    string date = DateTime.Now.ToString("yyyy.MM.dd HH:mm:ss");
    string reason = "I am the owner of the document.";
    string location = certificate.SubjectDict["C"];
    string DN = certificate.Subject;
    CPDFSignatureConfig signatureConfig = new CPDFSignatureConfig
    {
        Text = GetGrantorFromDictionary(certificate.SubjectDict),
        Content =
        "Name: " + name + "\n" +
        "Date: " + date + "\n" +
        "Reason: " + reason + " \n" +
        "Location: " + location + "\n" +
        "DN: " + DN + "\n",
        IsContentAlignLeft = false,
        IsDrawLogo = true,
        LogoBitmap = new Bitmap("Logo.png"),
        TextColor = new float[] { 0, 0, 0 },
        ContentColor = new float[] { 0, 0, 0 }
    };
    string filePath = outputPath + "\\" + document.FileName + "_Signed.pdf";
    signatureField.UpdataApWithSignature(signatureConfig);
    if (document.WriteSignatureToFilePath(signatureField,
        filePath,
        certificatePath, password,
        location,
        reason, CPDFSignaturePermissions.CPDFSignaturePermissionsNone))
    {
        Console.WriteLine("File saved in " + filePath);
        Console.WriteLine("Create digital signature done.");
    }
    else
    {
        Console.WriteLine("Create digital signature failed.");
    }
    Console.WriteLine("--------------------");
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Los pasos incluyen:

  1. Inicializar el documento y el certificado: Cargar el documento PDF y recuperar el certificado utilizando CPDFPKCS12CertHelper.

  2. Crear y configurar el campo de firma: Añade un campo de firma al PDF, establece sus propiedades y configura los detalles de la firma.

  3. Aplicar la firma: Utilice WriteSignatureToFilePath para aplicar la firma y guardar el PDF firmado.

10. Extraer texto

Extraer texto de documentos PDF es crucial para diversas tareas de procesamiento y análisis de datos. Esta sección explica cómo extraer texto de PDFs utilizando IronPDF y ComPDFKit.

10.1 Extraer texto con IronPDF

IronPDF ofrece un método sencillo para extraer texto de documentos PDF.

using IronPdf;
using System.IO;
PdfDocument pdf = PdfDocument.FromFile("PDF File With Text.pdf");
string text = pdf.ExtractAllText();
File.WriteAllText("PDF Text.txt", text);
using IronPdf;
using System.IO;
PdfDocument pdf = PdfDocument.FromFile("PDF File With Text.pdf");
string text = pdf.ExtractAllText();
File.WriteAllText("PDF Text.txt", text);
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

El proceso implica:

  1. Inicializar IronPDF: Importa la librería IronPDF.

  2. Cargar el PDF: Utilice PdfDocument.FromFile para cargar el archivo PDF.

  3. Extraer texto: Llame a ExtractAllText para recuperar todo el contenido de texto del PDF.

  4. Guardar texto en un archivo: Escribe el texto extraído en un archivo utilizando operaciones estándar de E/S de archivos.

    Este método proporciona una forma fácil y eficaz de extraer y guardar texto de documentos PDF.

10.2 Extraer texto con ComPDFKit

ComPDFKit ofrece una solución flexible para la extracción de texto de documentos PDF.

static private bool PDFToText(CPDFDocument document)
{
    string path = outputPath + "//PDFToText.txt";
    if (!document.PdfToText("1-" + document.PageCount.ToString(), path))//Page ranges are counted from 1
    {
        return false;
    }
    Console.WriteLine("Browse the generated file in " + path);
    return true;
}
static void Main(string[] args)
{
    #region Perparation work
    Console.WriteLine("Running PDFPage test sample…\r\n");
    SDKLicenseHelper.LicenseVerify();
    CPDFDocument document = CPDFDocument.InitWithFilePath("CommonFivePage.pdf");
    if (!Directory.Exists(outputPath))
    {
        Directory.CreateDirectory(outputPath);
    }
    #endregion
    if (PDFToText(document))
    {
        Console.WriteLine("PDF to text done.");
    }
    else
    {
        Console.WriteLine("PDF to text failed.");
    }
    Console.WriteLine("--------------------");
    Console.WriteLine("Done!");
    Console.WriteLine("--------------------");
    Console.ReadLine();
}
static private bool PDFToText(CPDFDocument document)
{
    string path = outputPath + "//PDFToText.txt";
    if (!document.PdfToText("1-" + document.PageCount.ToString(), path))//Page ranges are counted from 1
    {
        return false;
    }
    Console.WriteLine("Browse the generated file in " + path);
    return true;
}
static void Main(string[] args)
{
    #region Perparation work
    Console.WriteLine("Running PDFPage test sample…\r\n");
    SDKLicenseHelper.LicenseVerify();
    CPDFDocument document = CPDFDocument.InitWithFilePath("CommonFivePage.pdf");
    if (!Directory.Exists(outputPath))
    {
        Directory.CreateDirectory(outputPath);
    }
    #endregion
    if (PDFToText(document))
    {
        Console.WriteLine("PDF to text done.");
    }
    else
    {
        Console.WriteLine("PDF to text failed.");
    }
    Console.WriteLine("--------------------");
    Console.WriteLine("Done!");
    Console.WriteLine("--------------------");
    Console.ReadLine();
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Los pasos son:

  1. Inicializar el documento: Cargar el documento PDF utilizando CPDFDocument.InitWithFilePath.

  2. Configurar el directorio de salida: Asegúrese de que el directorio de salida existe o créelo si es necesario.

  3. Extraer y guardar texto: Utilice PdfToText para extraer texto del intervalo de páginas especificado y guardarlo en un archivo.

8. Licencias

Los modelos de licencia de IronPDF y ComPDFKit difieren en su enfoque y condiciones de uso. Comprender estas diferencias puede ayudarle a elegir la herramienta adecuada para las necesidades y el presupuesto de su proyecto.

9.1 Licencia IronPDF

Comparación entre Compdfkit e IronPDF: Figura 12 - Página de licencias de IronPDF

IronPDF opera bajo un modelo de licencia comercial, lo que significa que para aplicaciones comerciales o relacionadas con la empresa, generalmente se requiere la compra de una licencia. Este modelo ofrece flexibilidad, incluidas opciones como la distribución libre de derechos. Esto permite a los desarrolladores incorporar la biblioteca a sus proyectos sin tener que hacer frente a costes adicionales durante el tiempo de ejecución.

IronPDF ofrece licencias perpetuas. Las licencias perpetuas requieren un pago único por el uso de por vida, con cuotas opcionales por actualizaciones y asistencia técnica más allá del periodo inicial. Este modelo comercial garantiza que las empresas reciban asistencia dedicada, documentación completa y acceso a las funciones avanzadas necesarias para la generación y manipulación profesional de PDF.

9.2 Licencia de ComPDFKit

ComPDFKit emplea un modelo de licencia flexible que se adapta a las distintas necesidades empresariales. Ofrece licencias perpetuas y de suscripción. Una licencia perpetua implica un pago único que concede acceso de por vida al SDK, con cuotas opcionales para actualizaciones y asistencia ampliada. Las licencias de suscripción requieren pagos periódicos (mensual o anualmente) e incluyen acceso continuo a actualizaciones y asistencia.

A la hora de decidir entre IronPDF y ComPDFKit, tenga en cuenta los requisitos específicos de su proyecto, como la necesidad de soporte dedicado, las limitaciones presupuestarias y la escala de implantación. El modelo comercial de IronPDF es más adecuado para empresas que buscan un soporte sólido y funciones avanzadas.

9. Documentación y apoyo

9.1. Documentación y soporte de IronPDF

IronPDF ofrece a sus usuarios una documentación completa y sólidas opciones de asistencia. La documentación es extensa y detallada, y ofrece orientaciones claras sobre la instalación, el uso básico, las funciones avanzadas y la resolución de problemas. La documentación oficial está disponible en Lea los documentosque incluye una guía de inicio rápido, referencias detalladas a la API y numerosos ejemplos de código para ayudar a los desarrolladores a iniciarse y utilizar eficazmente las funciones de IronPDF.

IronPDF también mantiene activa una guía de resolución de problemas y un sitio de asistencia técnica a través de su blog y su sección de ejemplos, donde los usuarios pueden encontrar soluciones a problemas comunes, como retrasos en la renderización y dificultades de implantación. El sitio de asistencia incluye una colección de artículos que abordan las preguntas más frecuentes y cuestiones técnicas específicas.

Para asistencia directa, IronPDF ofrece un equipo de atención al cliente con capacidad de respuesta al que se puede contactar para cuestiones más complejas o asistencia personalizada. Esta combinación de amplia documentación y sólida infraestructura de soporte hace de IronPDF una opción fiable para los desarrolladores que buscan integrar funcionalidades PDF en sus aplicaciones.

9.2. Documentación y asistencia de ComPDFKit

ComPDFKit también proporciona documentación exhaustiva y recursos de soporte para sus usuarios. Cubre varios aspectos del uso del SDK, desde la configuración básica hasta funcionalidades avanzadas como marcas de agua y firmas digitales. En cuanto al soporte, ComPDFKit ofrece asistencia técnica a través de sus canales de atención al cliente. El equipo de asistencia está a su disposición para ayudarle a resolver problemas técnicos, responder a sus preguntas y orientarle sobre el uso eficaz del SDK.

Aunque tanto IronPDF como ComPDFKit ofrecen una sólida documentación y soporte, IronPDF tiene ventaja gracias a sus guías de solución de problemas más extensas y a un equipo de soporte muy receptivo. Esto lo hace especialmente ventajoso para los desarrolladores que puedan encontrarse con retos técnicos complejos y necesiten una asistencia fiable.

10. Conclusión

La comparación entre IronPDF y ComPDFKit pone de relieve los puntos fuertes y las consideraciones a tener en cuenta por los desarrolladores que buscan bibliotecas de C# sólidas para la generación y manipulación de PDF.

ComPDFKit es un completo SDK de PDF que soporta una amplia gama de funcionalidades necesarias para manejar documentos PDF mediante programación. Sobresale en las anotaciones de PDF y tiene amplias capacidades de edición. Sus funciones, como la conversión de formatos y las opciones de seguridad, añaden un valor significativo para los desarrolladores.

IronPDF, por su parte, es conocido por su API potente y fácil de usar. Simplifica la generación de PDF generándolos a partir de HTML, CSS y JavaScript. IronPDF destaca en la conversión de HTML a PDF, ofreciendo una integración perfecta con las aplicaciones .NET. La biblioteca ofrece amplias posibilidades de edición, como añadir encabezados, pies de página, marcas de agua y firmas digitales.

Las funciones de seguridad de IronPDF garantizan que la información confidencial de los documentos PDF esté bien protegida. Su compatibilidad con múltiples plataformas .NET y su rendimiento optimizado para cargas de trabajo elevadas lo convierten en la opción ideal para aplicaciones de nivel empresarial. El modelo de licencia comercial de IronPDF garantiza un soporte dedicado, documentación completa y acceso a funciones avanzadas, lo que lo hace especialmente adecuado para proyectos de nivel profesional.

IronPDF destaca como una opción sólida en comparación con ComPDFKit para los desarrolladores que buscan una biblioteca PDF completa y repleta de funciones. Sus funciones avanzadas, su API fácil de usar y su sólida infraestructura de asistencia lo convierten en la solución preferida para empresas y proyectos con requisitos diversos y exigentes relacionados con PDF. Las amplias capacidades de IronPDF y su soporte especializado proporcionan una ventaja significativa, garantizando una generación y manipulación de PDF fiables y eficientes para aplicaciones profesionales.

En resumen, tanto IronPDF como ComPDFKit son potentes herramientas para el procesamiento de PDF en C#. Sin embargo, el amplio conjunto de funciones de IronPDF, su rendimiento optimizado y su soporte superior lo convierten en la opción preferida de los desarrolladores que buscan aplicaciones profesionales y de nivel empresarial.

IronPDF proporciona un licencia de prueba gratuita para que los usuarios prueben la biblioteca y sus posibilidades. La licencia de IronPDF cuesta a partir de 749 dólares. Además, Iron Software ofrece nueve bibliotecas por el precio de dos, que incluyen IronXL y IronOCR junto con IronPDF.

< ANTERIOR
Comparación entre CraftMyPDF e IronPDF
SIGUIENTE >
Comparación entre Report .NET e IronPDF

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

Descarga gratuita de NuGet Descargas totales: 10,516,730 View Licenses >