Ce court didacticiel explique comment lire la table PDF en C#** et lire tout son contenu. Il fournit une description détaillée pour analyser tous les tableaux d’un fichier PDF, puis accéder à chaque ligne et cellule individuelle d’un tableau particulier. Afin de * lire la table à partir du code PDF C# * comprend quelques lignes dans lesquelles le fichier PDF source est chargé, puis toutes les tables sont analysées pour lire le contenu.
Étapes pour lire le tableau PDF en C#
- Ajoutez une référence à Aspose.PDF for .NET pour lire les données du tableau dans le PDF
- Chargez le fichier PDF source à l’aide de l’objet de classe Document
- Instanciez l’objet de classe TableAbsorber et lisez tous les tableaux de la page PDF souhaitée
- Parcourir toutes les lignes du tableau PDF cible
- Itérer toutes les cellules de chaque ligne et récupérer tous les fragments de texte
- Afficher ou traiter chaque fragment de texte dans une cellule
Une approche systématique est suivie dans ces étapes pour lire la table PDF en C#, où initialement le fichier PDF est chargé, puis toutes les tables sont analysées à l’aide de l’objet de classe TableAbsorber. Une fois que toutes les tables sont visitées dans le fichier PDF, vous pouvez obtenir la référence à l’une des tables de la collection analysée. Vous pouvez accéder à n’importe quel tableau, ligne, cellule et fragment de texte dans un fichier PDF pour le traiter ou l’afficher.
Code pour lire la table 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"); | |
} | |
} | |
} |
Dans cet exemple de code, l’utilisation de C# parse PDF table est rendue possible grâce à la classe TableAbsorber qui est utilisée pour lire les tables. Cependant, vous pouvez également utiliser d’autres options telles que TextAbsorber, ParagraphAbsorber, FontAbsorber et TextFragmentAbsorber pour accéder à différents éléments du document. Vous pouvez parcourir l’intégralité de la collection ou accéder à des éléments individuels à l’aide de l’index de tableau.
Nous avons appris à lire un tableau PDF en C# dans cette rubrique. Cependant, si vous souhaitez lire les signets PDF, reportez-vous à l’article sur comment lire les signets en PDF en utilisant C#.