Extrair tabelas da página do documento
Introdução
Neste tutorial, exploraremos como extrair tabelas de uma página de documento usando GroupDocs.Parser for .NET. GroupDocs.Parser é uma biblioteca poderosa que permite aos desenvolvedores trabalhar com vários formatos de documentos, como PDF, DOCX, XLSX e muito mais. Ao aproveitar seus recursos, podemos extrair com eficiência dados estruturados, como tabelas, desses documentos, permitindo-nos manipular e analisar as informações de forma programática.
Pré-requisitos
Antes de começar, certifique-se de ter o seguinte:
- Visual Studio instalado em sua máquina.
- Compreensão básica do desenvolvimento em C# e .NET.
- Biblioteca GroupDocs.Parser para .NET. Você pode baixá-lo emaqui.
- Acesso a um documento modelo (PDF, DOCX, etc.) contendo tabelas para extração.
Importar namespaces
Primeiro, comece importando os namespaces necessários em seu projeto C#:
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using GroupDocs.Parser.Data;
using GroupDocs.Parser.Options;
using GroupDocs.Parser.Templates;
Etapa 1: crie uma instância da classe analisador
Instancie oParser
class fornecendo o caminho para seu documento de amostra:
using (Parser parser = new Parser("YourSampleFile.pdf"))
{
//Seu código continua aqui...
}
Etapa 2: Verifique o suporte para extração de tabela de documentos
Antes de prosseguir, verifique se o documento suporta extração de tabelas:
if (!parser.Features.Tables)
{
Console.WriteLine("Document does not support table extraction.");
return;
}
Etapa 3: definir o layout da tabela
Defina o layout das tabelas a serem extraídas do documento. Especifique as larguras das colunas e as alturas das linhas de acordo com a estrutura do seu documento:
TemplateTableLayout layout = new TemplateTableLayout(
new double[] { 50, 95, 275, 415, 485, 545 }, // Larguras de coluna
new double[] { 325, 340, 365, 395 }); // Alturas das linhas
Etapa 4: configurar opções de extração de tabela
Crie opções para extração de tabela usando o layout especificado:
PageTableAreaOptions options = new PageTableAreaOptions(layout);
Etapa 5: recuperar informações do documento
Obtenha informações sobre o documento, incluindo o número de páginas:
IDocumentInfo documentInfo = parser.GetDocumentInfo();
if (documentInfo.PageCount == 0)
{
Console.WriteLine("Document has no pages.");
return;
}
Etapa 6: Iterar nas páginas do documento
Itere em cada página do documento para extrair tabelas:
for (int pageIndex = 0; pageIndex < documentInfo.PageCount; pageIndex++)
{
Console.WriteLine($"Page {pageIndex + 1}/{documentInfo.PageCount}");
// Extraia tabelas da página atual
IEnumerable<PageTableArea> tables = parser.GetTables(pageIndex, options);
// Iterar sobre tabelas extraídas
foreach (PageTableArea table in tables)
{
// Iterar nas linhas da tabela
for (int row = 0; row < table.RowCount; row++)
{
// Iterar nas colunas da tabela
for (int column = 0; column < table.ColumnCount; column++)
{
// Obtenha a célula da tabela
PageTableAreaCell cell = table[row, column];
if (cell != null)
{
// Imprima o texto da célula da tabela
Console.Write(cell.Text);
Console.Write(" | ");
}
}
Console.WriteLine();
}
Console.WriteLine();
}
}
Conclusão
Neste tutorial, abordamos o processo de extração de tabelas de páginas de documentos usando GroupDocs.Parser for .NET. Seguindo as etapas fornecidas, você pode integrar perfeitamente a funcionalidade de extração de tabelas em seus aplicativos .NET, permitindo o manuseio e a manipulação eficientes de dados estruturados em documentos.
Perguntas frequentes
O GroupDocs.Parser pode extrair tabelas de todos os tipos de documentos?
GroupDocs.Parser oferece suporte a vários formatos de documentos como PDF, DOCX, XLSX e muito mais, permitindo a extração de tabelas de tipos de arquivos compatíveis.
O GroupDocs.Parser for .NET é adequado para processamento de documentos em grande escala?
Sim, o GroupDocs.Parser foi projetado para lidar com documentos grandes com eficiência, tornando-o adequado para processar conjuntos de dados extensos.
O GroupDocs.Parser preserva a formatação durante a extração da tabela?
Sim, GroupDocs.Parser retém detalhes de formatação, como bordas de células, estilos de texto e alinhamentos durante a extração da tabela.
Posso extrair tabelas específicas com base em critérios de conteúdo?
GroupDocs.Parser oferece opções flexíveis para direcionar tabelas específicas com base em modelos de layout ou condições de conteúdo para extração.
O GroupDocs.Parser é compatível com o .NET Core?
Sim, GroupDocs.Parser é compatível com ambientes .NET Framework e .NET Core.