COMPARACIóN DE PRODUCTOS

Alternativas a iText7 Read PDF in C# (VS IronPDF)

Actualizado 20 de junio, 2023
Compartir:

PDF es un formato de documento portátil creado por Adobe Acrobat Reader, muy utilizado para compartir información digitalmente a través de Internet. Conserva el formato de los datos y ofrece funciones como el establecimiento de permisos de seguridad y la protección mediante contraseña. Como desarrollador de C#, es posible que se haya encontrado con situaciones en las que es necesario integrar la funcionalidad PDF en su aplicación de software. Construirlo desde cero puede ser una tarea larga y tediosa. Por lo tanto, teniendo en cuenta el rendimiento, la eficacia y la eficiencia de la aplicación, la disyuntiva entre crear un nuevo servicio desde cero o utilizar una biblioteca prediseñada es significativa.

Hay varias bibliotecas PDF disponibles para C#. En este artículo, exploraremos dos de las bibliotecas PDF más populares para leer documentos PDF en C#.

Software iText

iText 7, antes conocida como iText 7 Core, es una biblioteca PDF para programar documentos PDF en .NET C# y Java. Está disponible con licencia de código abierto (AGPL) y se pueden conceder licencias para aplicaciones comerciales.

iText Core es una API de alto nivel que proporciona métodos sencillos para generar y editar PDFs de todas las formas posibles. Con iText 7 Core puede dividir, combinar, anotar, rellenar formularios, firmar digitalmente y hacer mucho más en archivos PDF. iText 7 proporciona un Conversor de HTML a PDF.

IronPDF

IronPDF es una API de .NET y .NET Framework C# y Java que se utiliza para generar documentos PDF a partir de HTML, CSS y JavaScript, ya sea desde una URL, archivos HTML o cadenas HTML. IronPDF le permite manipular archivos PDF existentes como, dividir, fusionar, anotar, firmar digitalmente y mucho más.

IronPDF está enriquecido con más de 50 funciones para crear, leer y editar archivos PDF. Prioriza la velocidad, la facilidad de uso y la precisión cuando necesite entregar archivos PDF profesionales de alta calidad y con píxeles perfectos con Adobe Acrobat Reader. La API está bien documentada y se pueden encontrar muchos ejemplos de código fuente en su página de ejemplos de código.

Crear una aplicación de consola

Vamos a utilizar Visual Studio 2022 IDE para crear una aplicación para empezar. Visual Studio es el IDE oficial para el desarrollo en C#, y debe tenerlo instalado. Puede descargarlo en Sitio web de Microsoft Visual Studio si no está instalado.

Los siguientes pasos crearán un nuevo proyecto llamado "DemoApp".

  1. Abra Visual Studio y haga clic en "Crear un nuevo proyecto".

    Itext7 Leer PDF en C# Alternativas (VS IronPDF) Figura 1 - Nuevo proyecto

  2. Seleccione "Aplicación de consola" y haga clic en "Siguiente".

    Itext7 Leer PDF en C# Alternativas (VS IronPDF) Figura 2

  3. Establezca el nombre del proyecto.

    Itext7 Leer PDF en C# Alternativas (VS IronPDF) Figura 3

  4. Seleccione la versión .NET. Elija la versión estable .NET 6.0.

    Itext7 Leer PDF en C# Alternativas (VS IronPDF) Figura 4

Instalar la biblioteca IronPDF

Una vez creado el proyecto, es necesario instalar la biblioteca IronPDF en el proyecto para poder utilizarla. Sigue estos pasos para instalarlo.

  1. Abre NuGet Package Manager, ya sea desde el explorador de soluciones o desde Herramientas.

    Itext7 Leer PDF en C# Alternativas (VS IronPDF) Figura 5

  2. Busque la biblioteca IronPDF y selecciónela para el proyecto actual. Haga clic en Instalar.

    Itext7 Leer PDF en C# Alternativas (VS IronPDF) Figura 6

    Añada el siguiente espacio de nombres en la parte superior del archivo Program.cs

using IronPdf;
using IronPdf;
Imports IronPdf
VB   C#

Instalar la biblioteca iText 7

Una vez creado el proyecto, es necesario instalar la biblioteca iText 7 en el proyecto para poder utilizarla. Sigue los pasos para instalarlo.

  1. Abra NuGet Package Manager desde el explorador de soluciones o desde Herramientas.

    Itext7 Leer PDF en C# Alternativas (VS IronPDF) Figura 7

  2. Busque la biblioteca iText 7 y selecciónela para el proyecto actual. Haz clic en instalar.

    Itext7 Leer PDF en C# Alternativas (VS IronPDF) Figura 8

    Añada los siguientes espacios de nombres en la parte superior del archivo Program.cs

using iText.Kernel.Pdf.Canvas.Parser.Listener;
using iText.Kernel.Pdf.Canvas.Parser;
using iText.Kernel.Pdf;
using iText.Kernel.Pdf.Canvas.Parser.Listener;
using iText.Kernel.Pdf.Canvas.Parser;
using iText.Kernel.Pdf;
Imports iText.Kernel.Pdf.Canvas.Parser.Listener
Imports iText.Kernel.Pdf.Canvas.Parser
Imports iText.Kernel.Pdf
VB   C#

Abrir archivos PDF

Vamos a utilizar el siguiente archivo PDF para extraer texto del mismo. Se trata de un documento PDF de dos páginas.

Itext7 Leer PDF en C# Alternativas (VS IronPDF) Figura 9

Uso de la biblioteca iText

Para abrir un archivo PDF utilizando la biblioteca iText es un proceso de dos pasos. En primer lugar, creamos un objeto PdfReader y le pasamos la ubicación del archivo como parámetro. A continuación, utilizamos la clase PdfDocument para crear un nuevo documento PDF. El código es el siguiente:

PdfReader pdfReader = new PdfReader("sample.pdf");
PdfDocument pdfDoc = new PdfDocument(pdfReader);
PdfReader pdfReader = new PdfReader("sample.pdf");
PdfDocument pdfDoc = new PdfDocument(pdfReader);
Dim pdfReader As New PdfReader("sample.pdf")
Dim pdfDoc As New PdfDocument(pdfReader)
VB   C#

Uso de IronPDF

Abrir archivos PDF con IronPDF es muy fácil. Utilice el método FromFile de la clase PdfDocument para abrir archivos PDF desde cualquier ubicación. El siguiente código de una línea abre un archivo PDF para leer datos:

var pdf = PdfDocument.FromFile("sample.pdf");
var pdf = PdfDocument.FromFile("sample.pdf");
Dim pdf = PdfDocument.FromFile("sample.pdf")
VB   C#

Leer datos de archivos PDF

Uso de la biblioteca iText7

Leer datos PDF no es tan sencillo en la biblioteca iText 7. Tenemos que recorrer manualmente cada página del documento PDF para extraer el texto de cada una de ellas. El siguiente código fuente ayuda a extraer texto del documento PDF página por página:

for (int page = 1; page <= pdfDoc.GetNumberOfPages(); page++)
{
    ITextExtractionStrategy strategy = new SimpleTextExtractionStrategy();
    string pageContent = PdfTextExtractor.GetTextFromPage(pdfDoc.GetPage(page), strategy);
    Console.WriteLine(pageContent);
}
pdfDoc.Close();
pdfReader.Close();
for (int page = 1; page <= pdfDoc.GetNumberOfPages(); page++)
{
    ITextExtractionStrategy strategy = new SimpleTextExtractionStrategy();
    string pageContent = PdfTextExtractor.GetTextFromPage(pdfDoc.GetPage(page), strategy);
    Console.WriteLine(pageContent);
}
pdfDoc.Close();
pdfReader.Close();
Dim page As Integer = 1
Do While page <= pdfDoc.GetNumberOfPages()
	Dim strategy As ITextExtractionStrategy = New SimpleTextExtractionStrategy()
	Dim pageContent As String = PdfTextExtractor.GetTextFromPage(pdfDoc.GetPage(page), strategy)
	Console.WriteLine(pageContent)
	page += 1
Loop
pdfDoc.Close()
pdfReader.Close()
VB   C#

En el código anterior ocurren muchas cosas. Primero, declaramos la Estrategia de Extracción de Texto, y luego usamos el método GetTextFromPage de la clase PdfExtractor para leer el texto. Este método acepta dos parámetros: el primero es la página del documento PDF y el segundo es la estrategia. Para obtener la página del documento PDF utilice la instancia de PdfDocument para llamar al método GetPage y pase el número de página como parámetro. La salida se devuelve como una cadena, que se muestra en la pantalla de salida de la consola. Por último, se cierran los objetos PDFReader y PdfDocument. Observe también el siguiente ejemplo de código aquí.

Salida

Itext7 Leer PDF en C# Alternativas (VS IronPDF) Figura 10

Uso de IronPDF

Al igual que abrir el archivo PDF era una línea de código, leer texto de un archivo PDF también es un proceso de una sola línea. La clase PDFDocument proporciona el método ExtractAllText para leer todo el contenido del fichero. Console.WriteLine se utiliza para imprimir el texto en la pantalla. El código es el siguiente:

string text = pdf.ExtractAllText();
Console.WriteLine(text);
string text = pdf.ExtractAllText();
Console.WriteLine(text);
Dim text As String = pdf.ExtractAllText()
Console.WriteLine(text)
VB   C#

Salida

Itext7 Leer PDF en C# Alternativas (VS IronPDF) Figura 11

El resultado es preciso y sin errores. Sin embargo, para utilizar el método ExtractAllText, es necesario disponer de una licencia, ya que sólo funciona en modo de producción. Puede obtener su clave de licencia de prueba durante 30 días desde aquí enlace.

Comparación

En comparación, ambas bibliotecas ofrecen resultados 100% precisos al extraer texto de un documento PDF. Ambos son iguales en cuanto a precisión. Sin embargo, IronPDF es más eficiente en términos de rendimiento y legibilidad del código.

IronPDF sólo necesita dos líneas de código para lograr la misma tarea que iText. Proporciona métodos de extracción de texto sin necesidad de implementar ninguna lógica adicional. El código iText es un poco complicado, y hay que cerrar las dos instancias creadas en el momento de abrir un documento PDF. Mientras que IronPDF borra la memoria automáticamente una vez realizada la tarea.

Resumen

En este artículo, vimos cómo leer documentos PDF utilizando la biblioteca iText en C# y luego lo comparamos con IronPDF. Ambas bibliotecas ofrecen resultados precisos y numerosos métodos de manipulación de PDF con los que trabajar. Puede crear, editar y leer datos de archivos PDF utilizando estas dos bibliotecas.

iText es de código abierto y de uso gratuito, pero con restricciones. Puede ser con licencia para uso comercial. IronPDF también es gratuito y puede ser con licencia para actividades comerciales con un 30 días de prueba gratuita.

Descarga IronPDF y pruébalo.

< ANTERIOR
Cómo convertir PDF a imagen usando Itextsharp
SIGUIENTE >
Comparación entre IronPDF y Foxit PDF SDK

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

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