COMPARACIóN DE PRODUCTOS

Alternativas a iTextSharp Read PDF (Tutorial para desarrolladores)

Actualizado 3 de abril, 2024
Compartir:

PDF (Formato de documento portátil) es un formato de archivo muy utilizado para compartir documentos de forma coherente y segura. La lectura y manipulación de este tipo de archivos en C# es un requisito habitual en diversas aplicaciones, como sistemas de gestión de documentos, herramientas de generación de informes, etc. En este artículo, compararemos dos bibliotecas populares para leer archivos PDF en C#: IronPDF e iTextSharp (la última biblioteca .NET iText).

IronPDF es una completa biblioteca C# de Iron Software que ofrece una amplia gama de funciones para trabajar con archivos PDF. Permite a los desarrolladores crear, editar y manipular documentos PDF sin problemas. IronPDF es conocido por su sencillez y facilidad de uso, lo que lo convierte en una excelente opción para los desarrolladores que necesitan integrar rápidamente funciones PDF en sus aplicaciones.

iTextSharp es otra biblioteca popular para trabajar con archivos PDF en C#. Existe desde hace tiempo y se utiliza mucho en la industria. iText ofrece un rico conjunto de funciones para crear y manipular documentos PDF. Es conocido por su flexibilidad y extensibilidad, lo que lo hace adecuado para tareas complejas relacionadas con PDF.

Cómo usar IronPDF Vs iTextSharp para leer PDFs en C#

  1. Crear un nuevo proyecto C# en Visual Studio para comparar IronPDF Vs iTextSharp para la lectura de archivos PDF.
  2. Instale las bibliotecas IronPDF e iTextSharp en el proyecto.
  3. Lee archivos PDF con IronPDF.
  4. Lee archivos PDF con iTextSharp.

Requisitos previos

  1. Visual Studio: Asegúrese de tener Visual Studio o cualquier otro entorno de desarrollo C# instalado.
  2. Gestor de paquetes NuGet: Asegúrate de que puedes utilizar NuGet para gestionar paquetes en tu proyecto.

Paso 1: Crear un nuevo C# proyecto en Visual Studio para comparar IronPDF Vs iTextSharp leer archivos PDF

Comience configurando una aplicación de consola C#. Abra Visual Studio y seleccione Crear un nuevo proyecto. Seleccione el tipo de aplicación Consola.

Alternativas a iTextSharp Read PDF (Tutorial para desarrolladores): Figura 1 - Aplicación de consola

Indique el nombre del proyecto como se muestra a continuación.

Alternativas a iTextSharp Read PDF (Tutorial para desarrolladores): Figura 2 - Configuración del proyecto

Seleccione la versión .NET necesaria para el proyecto.

Alternativas a iTextSharp Read PDF (Tutorial para desarrolladores): Figura 3 - Marco de trabajo

Una vez hecho esto, Visual Studio generará un nuevo proyecto.

Paso 2: Instalar las librerías IronPDF e iTextSharp en el proyecto

iTextSharp puede instalarse desde la página NuGet Gestor de paquetes. La última versión está disponible como paquete iText.

Alternativas a iTextSharp Read PDF (Tutorial para desarrolladores): Figura 4 - iText

O desde el gestor de paquetes de Visual Studio, como se muestra a continuación. Busque iText en el Gestor de paquetes y haga clic en Instalar.

Alternativas a iTextSharp Read PDF (Tutorial para desarrolladores): Figura 5 - Gestor de paquetes NuGet

IronPDF puede instalarse desde el NuGet Package Manager como se muestra a continuación.

Alternativas a iTextSharp Read PDF (Tutorial para desarrolladores): Figura 6 - IronPDF

O desde el gestor de paquetes de Visual Studio, como se muestra a continuación. Buscar IronPDF en el Gestor de paquetes y haga clic en Instalar.

Alternativas a iTextSharp Read PDF (Tutorial para desarrolladores): Figura 7 - Instalar IronPDF

Paso 3: Leer texto de un archivo PDF con IronPDF

Añada el siguiente código al archivo program.cs y proporcione un documento PDF de ejemplo con el siguiente contenido.

Alternativas a iTextSharp Read PDF (Tutorial para desarrolladores): Figura 8 - Entrada PDF

using IronPdf;
Console.WriteLine("Comparison of IronPDF And itextsharp Read PDF Files in C#");
//  lector pdfreader
ReadUsingIronPDF.Read();
public class ReadUsingIronPDF
{
    public static void Read()
    {
        //  leer desde una ubicación específica
        string filename = "C:\\code\\articles\\ITextSharp\\ITextSharpIronPdfDemo\\Example.pdf";
        var pdfReader = PdfDocument.FromFile(filename);
        //  Obtener todo el texto para poner en un índice de búsqueda utilizando simpletextextractionstrategy nuevo
        var allText = pdfReader.ExtractAllText();
        Console.WriteLine("------------------Text From PDF-----------------");
        Console.WriteLine(allText);
        Console.WriteLine("------------------Text From PDF-----------------");
        var allIMages = pdfReader.ExtractAllImages();
        Console.WriteLine("------------------Image Count From PDF-----------------");
        Console.WriteLine($"Total Images={allIMages.Count()}");
        Console.WriteLine("------------------Image Count From PDF-----------------");
        Console.WriteLine("------------------one Page Text From PDF page-----------------");
        var pageCount = pdfReader.PageCount;
        for (int page = 0; page < pageCount; page++)
        {
            string Text = pdfReader.ExtractTextFromPage(page);
            Console.WriteLine(Text);
        }    
    }
}
using IronPdf;
Console.WriteLine("Comparison of IronPDF And itextsharp Read PDF Files in C#");
//  lector pdfreader
ReadUsingIronPDF.Read();
public class ReadUsingIronPDF
{
    public static void Read()
    {
        //  leer desde una ubicación específica
        string filename = "C:\\code\\articles\\ITextSharp\\ITextSharpIronPdfDemo\\Example.pdf";
        var pdfReader = PdfDocument.FromFile(filename);
        //  Obtener todo el texto para poner en un índice de búsqueda utilizando simpletextextractionstrategy nuevo
        var allText = pdfReader.ExtractAllText();
        Console.WriteLine("------------------Text From PDF-----------------");
        Console.WriteLine(allText);
        Console.WriteLine("------------------Text From PDF-----------------");
        var allIMages = pdfReader.ExtractAllImages();
        Console.WriteLine("------------------Image Count From PDF-----------------");
        Console.WriteLine($"Total Images={allIMages.Count()}");
        Console.WriteLine("------------------Image Count From PDF-----------------");
        Console.WriteLine("------------------one Page Text From PDF page-----------------");
        var pageCount = pdfReader.PageCount;
        for (int page = 0; page < pageCount; page++)
        {
            string Text = pdfReader.ExtractTextFromPage(page);
            Console.WriteLine(Text);
        }    
    }
}
Imports IronPdf
Console.WriteLine("Comparison of IronPDF And itextsharp Read PDF Files in C#")
'  lector pdfreader
ReadUsingIronPDF.Read()
'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
'public class ReadUsingIronPDF
'{
'	public static void Read()
'	{
'		'  leer desde una ubicación específica
'		string filename = "C:\code\articles\ITextSharp\ITextSharpIronPdfDemo\Example.pdf";
'		var pdfReader = PdfDocument.FromFile(filename);
'		'  Obtener todo el texto para poner en un índice de búsqueda utilizando simpletextextractionstrategy nuevo
'		var allText = pdfReader.ExtractAllText();
'		Console.WriteLine("------------------Text From PDF-----------------");
'		Console.WriteLine(allText);
'		Console.WriteLine("------------------Text From PDF-----------------");
'		var allIMages = pdfReader.ExtractAllImages();
'		Console.WriteLine("------------------Image Count From PDF-----------------");
'		Console.WriteLine(string.Format("Total Images={0}", allIMages.Count()));
'		Console.WriteLine("------------------Image Count From PDF-----------------");
'		Console.WriteLine("------------------one Page Text From PDF page-----------------");
'		var pageCount = pdfReader.PageCount;
'		for (int page = 0; page < pageCount; page++)
'		{
'			string Text = pdfReader.ExtractTextFromPage(page);
'			Console.WriteLine(Text);
'		}
'	}
'}
VB   C#

Código Explicación

  1. Para crear un PDF de texto, cree un documento Word y añada el texto anterior al documento Word y guárdelo como documento PDF con el nombre Ejemplo.pdf
  2. En el código, creamos un PDFReader a partir de la ruta del archivo PDF y extraemos todo el texto
  3. Las imágenes del PDF se pueden extraer con el método ExtractImages
  4. Cada página de los documentos PDF puede leerse utilizando el método ExtractTextFromPage

Salida

Alternativas a iTextSharp Read PDF (Tutorial para desarrolladores): Figura 9 - Leer PDF usando IronPDF Output

Paso 3: Leer texto de un archivo PDF con iTextSharp

Ahora para comparar el texto leído desde iTextSharp añada el siguiente código al mismo fichero program.cs. Por simplicidad, no hemos separado las clases en diferentes archivos.

using IronPdf;
using iText.Kernel.Pdf;
using iText.Kernel.Pdf.Canvas.Parser.Listener;
using iText.Kernel.Pdf.Canvas.Parser;
Console.WriteLine("Comparison of IronPDF And Itextsharp Read PDF Files in C#");
//LeerUsandoIronPDF.Read();
ReadUsingITextSharp.Read();
public class ReadUsingITextSharp
{
    public static void Read()
    {
        string pdfFile = "C:\\code\\articles\\ITextSharp\\ITextSharpIronPdfDemo\\Example.pdf";
        //  Crear un lector de PDF
        PdfReader pdfReader = new PdfReader(pdfFile);
        iText.Kernel.Pdf.PdfDocument pdfDocument = new iText.Kernel.Pdf.PdfDocument(pdfReader);
        //  Extraer texto plano del PDF
        LocationTextExtractionStrategy strategy = new LocationTextExtractionStrategy();
        string pdfText = PdfTextExtractor.GetTextFromPage(pdfDocument.GetPage(1), strategy);
        //  Visualizar o manipular el texto extraído según sea necesario
        Console.WriteLine(pdfText);
    }
}
using IronPdf;
using iText.Kernel.Pdf;
using iText.Kernel.Pdf.Canvas.Parser.Listener;
using iText.Kernel.Pdf.Canvas.Parser;
Console.WriteLine("Comparison of IronPDF And Itextsharp Read PDF Files in C#");
//LeerUsandoIronPDF.Read();
ReadUsingITextSharp.Read();
public class ReadUsingITextSharp
{
    public static void Read()
    {
        string pdfFile = "C:\\code\\articles\\ITextSharp\\ITextSharpIronPdfDemo\\Example.pdf";
        //  Crear un lector de PDF
        PdfReader pdfReader = new PdfReader(pdfFile);
        iText.Kernel.Pdf.PdfDocument pdfDocument = new iText.Kernel.Pdf.PdfDocument(pdfReader);
        //  Extraer texto plano del PDF
        LocationTextExtractionStrategy strategy = new LocationTextExtractionStrategy();
        string pdfText = PdfTextExtractor.GetTextFromPage(pdfDocument.GetPage(1), strategy);
        //  Visualizar o manipular el texto extraído según sea necesario
        Console.WriteLine(pdfText);
    }
}
Imports IronPdf
Imports iText.Kernel.Pdf
Imports iText.Kernel.Pdf.Canvas.Parser.Listener
Imports iText.Kernel.Pdf.Canvas.Parser
Console.WriteLine("Comparison of IronPDF And Itextsharp Read PDF Files in C#")
'LeerUsandoIronPDF.Read();
ReadUsingITextSharp.Read()
'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
'public class ReadUsingITextSharp
'{
'	public static void Read()
'	{
'		string pdfFile = "C:\code\articles\ITextSharp\ITextSharpIronPdfDemo\Example.pdf";
'		'  Crear un lector de PDF
'		PdfReader pdfReader = New PdfReader(pdfFile);
'		iText.Kernel.Pdf.PdfDocument pdfDocument = New iText.Kernel.Pdf.PdfDocument(pdfReader);
'		'  Extraer texto plano del PDF
'		LocationTextExtractionStrategy strategy = New LocationTextExtractionStrategy();
'		string pdfText = PdfTextExtractor.GetTextFromPage(pdfDocument.GetPage(1), strategy);
'		'  Visualizar o manipular el texto extraído según sea necesario
'		Console.WriteLine(pdfText);
'	}
'}
VB   C#

Salida

Alternativas a iTextSharp Read PDF (Tutorial para desarrolladores): Figura 10 - Leer PDF usando iTextSharp Output

Limitaciones de iTextSharp

  1. Curva de aprendizaje: iTextSharp tiene una curva de aprendizaje más pronunciada, especialmente para los principiantes.
  2. Licencias: El modelo de licencias de iTextSharp puede no ser adecuado para todos los proyectos, especialmente para aquellos con limitaciones presupuestarias.

Ventajas de IronPDF

  1. Facilidad de uso: IronPDF es conocido por su sencilla API, lo que facilita a los desarrolladores los primeros pasos.
  2. Renderizado de documentos: IronPDF proporciona un renderizado preciso de los documentos PDF, garantizando que el texto extraído sea fiel al original.

Licencias (prueba gratuita disponible)

Para utilizar IronPDF. Introduzca esta clave en el archivo appsettings.json.

"IronPdf.LicenseKey": "your license key"

Para recibir una licencia de prueba, indique su dirección de correo electrónico.

Conclusión

Elegir entre IronPDF e iTextSharp depende de los requisitos específicos de su proyecto. Si necesita una biblioteca sencilla y fácil de usar para las operaciones habituales con PDF, IronPDF puede ser la mejor opción. A la hora de tomar una decisión, tenga en cuenta factores como la complejidad de su aplicación, el presupuesto y la curva de aprendizaje.

IronPDF está diseñado para integrar perfectamente la generación de PDF en su aplicación, gestionando sin esfuerzo la conversión de documentos formateados en PDF. Esta versátil herramienta le permite convertir formularios web, páginas HTML locales y otros contenidos web a PDF utilizando .NET. Los usuarios pueden descargar, enviar por correo electrónico o almacenar documentos en la nube cómodamente. Tanto si necesita elaborar facturas, presupuestos, informes, contratos u otros documentos profesionales, IronPDF te tiene cubierto. Mejore su aplicación con las funciones intuitivas y eficaces de generación de PDF de IronPDF.

< ANTERIOR
Cómo leer documentos PDF en C# con iTextSharp:
SIGUIENTE >
PDFsharp vs iTextSharp (Comparación de bibliotecas PDF C#)

¿Listo para empezar? Versión: 2024.7 recién publicada

Descarga gratuita de NuGet Descargas totales: 9,974,197 Ver licencias >
123