Wyodrębnij tabele ze strony dokumentu

Wstęp

W tym samouczku przyjrzymy się, jak wyodrębnić tabele ze strony dokumentu za pomocą GroupDocs.Parser dla .NET. GroupDocs.Parser to potężna biblioteka, która umożliwia programistom pracę z różnymi formatami dokumentów, takimi jak PDF, DOCX, XLSX i innymi. Wykorzystując jego funkcje, możemy skutecznie wyodrębniać z dokumentów ustrukturyzowane dane, takie jak tabele, co pozwala nam programowo manipulować i analizować informacje.

Warunki wstępne

Zanim zaczniesz, upewnij się, że masz następujące elementy:

  • Program Visual Studio zainstalowany na Twoim komputerze.
  • Podstawowa znajomość programowania w C# i .NET.
  • Biblioteka GroupDocs.Parser dla .NET. Można go pobrać zTutaj.
  • Dostęp do przykładowego dokumentu (PDF, DOCX itp.) zawierającego tabele do wyodrębnienia.

Importuj przestrzenie nazw

Najpierw zacznij od zaimportowania niezbędnych przestrzeni nazw do projektu 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;

Krok 1: Utwórz instancję klasy analizatora składni

Utwórz instancjęParser class, podając ścieżkę do przykładowego dokumentu:

using (Parser parser = new Parser("YourSampleFile.pdf"))
{
    //Twój kod jest kontynuowany tutaj...
}

Krok 2: Sprawdź obsługę wyodrębniania tabeli dokumentów

Przed kontynuowaniem sprawdź, czy dokument obsługuje wyodrębnianie tabeli:

if (!parser.Features.Tables)
{
    Console.WriteLine("Document does not support table extraction.");
    return;
}

Krok 3: Zdefiniuj układ tabeli

Zdefiniuj układ tabel, które mają zostać wyodrębnione z dokumentu. Określ szerokość kolumn i wysokość wierszy zgodnie ze strukturą dokumentu:

TemplateTableLayout layout = new TemplateTableLayout(
    new double[] { 50, 95, 275, 415, 485, 545 },  // Szerokości kolumn
    new double[] { 325, 340, 365, 395 });         // Wysokości rzędów

Krok 4: Skonfiguruj opcje wyodrębniania tabeli

Utwórz opcje wyodrębniania tabeli przy użyciu określonego układu:

PageTableAreaOptions options = new PageTableAreaOptions(layout);

Krok 5: Pobierz informacje o dokumencie

Pobierz informacje o dokumencie, w tym liczbę stron:

IDocumentInfo documentInfo = parser.GetDocumentInfo();
if (documentInfo.PageCount == 0)
{
    Console.WriteLine("Document has no pages.");
    return;
}

Krok 6: Iteruj po stronach dokumentu

Iteruj po każdej stronie dokumentu, aby wyodrębnić tabele:

for (int pageIndex = 0; pageIndex < documentInfo.PageCount; pageIndex++)
{
    Console.WriteLine($"Page {pageIndex + 1}/{documentInfo.PageCount}");
    // Wyodrębnij tabele z bieżącej strony
    IEnumerable<PageTableArea> tables = parser.GetTables(pageIndex, options);
    // Iteruj po wyodrębnionych tabelach
    foreach (PageTableArea table in tables)
    {
        // Iteruj po wierszach tabeli
        for (int row = 0; row < table.RowCount; row++)
        {
            // Iteruj po kolumnach tabeli
            for (int column = 0; column < table.ColumnCount; column++)
            {
                // Zdobądź komórkę tabeli
                PageTableAreaCell cell = table[row, column];
                if (cell != null)
                {
                    // Wydrukuj tekst komórki tabeli
                    Console.Write(cell.Text);
                    Console.Write(" | ");
                }
            }
            Console.WriteLine();
        }
        Console.WriteLine();
    }
}

Wniosek

tym samouczku omówiliśmy proces wyodrębniania tabel ze stron dokumentów przy użyciu programu GroupDocs.Parser dla platformy .NET. Wykonując podane kroki, możesz bezproblemowo zintegrować funkcję wyodrębniania tabel z aplikacjami .NET, umożliwiając wydajną obsługę i manipulowanie danymi strukturalnymi w dokumentach.

Często zadawane pytania

Czy GroupDocs.Parser może wyodrębniać tabele ze wszystkich typów dokumentów?

GroupDocs.Parser obsługuje różne formaty dokumentów, takie jak PDF, DOCX, XLSX i inne, umożliwiając wyodrębnianie tabel z kompatybilnych typów plików.

Czy GroupDocs.Parser dla .NET nadaje się do przetwarzania dokumentów na dużą skalę?

Tak, GroupDocs.Parser został zaprojektowany do wydajnej obsługi dużych dokumentów, dzięki czemu nadaje się do przetwarzania dużych zbiorów danych.

Czy GroupDocs.Parser zachowuje formatowanie podczas wyodrębniania tabeli?

Tak, podczas wyodrębniania tabeli GroupDocs.Parser zachowuje szczegóły formatowania, takie jak obramowania komórek, style tekstu i wyrównania.

Czy mogę wyodrębnić określone tabele na podstawie kryteriów treści?

GroupDocs.Parser oferuje elastyczne opcje kierowania na określone tabele w oparciu o szablony układu lub warunki zawartości do wyodrębnienia.

Czy GroupDocs.Parser jest zgodny z platformą .NET Core?

Tak, GroupDocs.Parser jest kompatybilny zarówno ze środowiskami .NET Framework, jak i .NET Core.