Este breve tutorial explica cómo leer la tabla PDF en C#** y leer todo el contenido que contiene. Proporciona una descripción detallada para analizar todas las tablas en un archivo PDF y luego acceder a cada fila y celda individual de una tabla en particular. Para leer la tabla desde PDF, el código C# consta de unas pocas líneas en las que se carga el archivo PDF de origen y luego se analizan todas las tablas para leer el contenido.
Pasos para leer la tabla PDF en C#
- Agregue una referencia a Aspose.PDF for .NET para leer los datos de la tabla en el PDF
- Cargue el archivo PDF de origen utilizando el objeto de clase Document
- Cree una instancia del objeto de clase TableAbsorber y lea todas las tablas de la página PDF deseada
- Iterar a través de todas las filas en la tabla PDF de destino
- Iterar todas las celdas de cada fila y obtener todos los fragmentos de texto
- Mostrar o procesar cada fragmento de texto en una celda
Se sigue un enfoque sistemático en estos pasos para leer la tabla PDF en C#, donde inicialmente se carga el archivo PDF y luego todas las tablas se analizan utilizando el objeto de clase TableAbsorber. Una vez que se visitan todas las tablas en el archivo PDF, puede obtener la referencia a cualquiera de las tablas en la colección analizada. Puede acceder a cualquier tabla, fila, celda y fragmento de texto en un archivo PDF para procesarlo o mostrarlo.
Código para leer la tabla PDF en C#
using System; | |
using Aspose.Pdf; | |
using Aspose.Pdf.Text; | |
namespace ReadPDFTableInCSharp | |
{ | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
// Instantiate the license to avoid trial limitations while reading table data from PDF | |
License asposePdfLicense = new License(); | |
asposePdfLicense.SetLicense("Aspose.pdf.lic"); | |
// Load source PDF document having a table in it | |
Aspose.Pdf.Document pdfDocument = new Aspose.Pdf.Document(@"PdfWithTable.pdf"); | |
// Declare and initialize TableAbsorber class object for reading table from the PDF | |
Aspose.Pdf.Text.TableAbsorber tableAbsorber = new Aspose.Pdf.Text.TableAbsorber(); | |
// Parse all the tables from the desired page in the PDF | |
tableAbsorber.Visit(pdfDocument.Pages[1]); | |
// Get reference to the first table in the parsed collection | |
AbsorbedTable absorbedTable = tableAbsorber.TableList[0]; | |
// Iterate through all the rows in the PDF table | |
foreach (AbsorbedRow pdfTableRow in absorbedTable.RowList) | |
{ | |
// Iterate through all the cells in the pdf table row | |
foreach (AbsorbedCell pdfTableCell in pdfTableRow.CellList) | |
{ | |
// Fetch all the text fragments in the cell | |
TextFragmentCollection textFragmentCollection = pdfTableCell.TextFragments; | |
// Iterate through all the text fragments | |
foreach (TextFragment textFragment in textFragmentCollection) | |
{ | |
// Display the text | |
Console.WriteLine(textFragment.Text); | |
} | |
} | |
} | |
System.Console.WriteLine("Done"); | |
} | |
} | |
} |
En este código de muestra, el uso de C# parse PDF table es posible gracias a la clase TableAbsorber que se usa para leer tablas. Sin embargo, también puede usar otras opciones como TextAbsorber, ParagraphAbsorber, FontAbsorber y TextFragmentAbsorber para acceder a diferentes elementos del documento. Puede iterar a través de toda la colección o acceder a elementos individuales utilizando el índice de matriz.
Hemos aprendido cómo leer una tabla PDF en C# en este tema. Sin embargo, si desea leer los marcadores de PDF, consulte el artículo sobre cómo leer marcadores en PDF usando C#.