IRONSOFTWAREHOME

Wykrywanie tabel z kropkowanymi granicami z ReadDocumentAdvanced

Curtis Chau
Curtis Chau
Updated: 29 czerwca 2026

ReadDocumentAdvanced wyodrebnia dane tabeli, komórka po komórce, ale nie moze wykryc tabel z kropkowanymi lub kreskowanymi granicami (przyklad border: 1px dotted black). Tekst na stronie moze byc nadal czytelny, ale dostep do obiektu tabeli sie nie powiedzie, poniewaz silnik nigdy nie rozpoznaje tabeli.

Gdy wywolujesz ReadDocumentAdvanced na dokumencie z kropkowana granica tabeli, a nastepnie odczytujesz jego komorki, wyrzuca:

Unhandled exception. System.InvalidOperationException: Sequence contains no elements
Text

Przerwy miedzy kropkami dziela granice na nieciagle segmenty, wiec silnik OCR nie widzi ciaglego konturu, ktory moznaby uznac za granice tabeli. Brak wykrytej Tables, Tables.First() nie ma nic do zwrocenia.

Rozwiązanie

Zastosuj filtr Dilate() przed przetwarzaniem. Dylatacja rozszerza ciemne piksele na obrazie, zamykajac luki miedzy kropkami, aby granica odczytywac sie jako jedna solidna linia. Wtedy silnik moze wykryc obiekt tabeli i zwrocic jego komorki.

1. Wlacz odczyt tabel i zaladuj dane wejsciowe.

Wlacz ReadDataTables, aby silnik zbudowal strukturalny wynik tabeli, a nastepnie zaladuj obraz.

var ocr = new IronTesseract();
ocr.Configuration.ReadDataTables = true;
var input = new OcrInput();
input.Load("image-20250408-144240.png");
C#

Tabela wejsciowa z kropkowanymi granicami, ktore OCR nie jest w stanie wykryc

2. Dylatacja przed odczytem

Wywolaj Dilate() na wejsciu, aby scalic kropkowana granice w ciagly kontur, a nastepnie uruchom ReadDocumentAdvanced.

input.Dilate();
input.SaveAsImages("export.png", AnyBitmap.ImageFormat.Png);
var res = ocr.ReadDocumentAdvanced(input);
Console.WriteLine(res.Tables.First().CellInfos.First().CellText);
C#

Dilate() konwertuje kropkowane linie wizualne na solidne granice, ktore silnik moze sledzic, wiecres.Tables jest teraz wypelnione, a odczyt tekstu komorek przebiega czysto. Wywolanie SaveAsImages jest opcjonalne; pozwala to na sprawdzenie obrazu z dylatacja, aby potwierdzic, ze granice zamknely sie zgodnie z oczekiwaniami.

Tabela po Dilate() z kropkowanymi granicami scala sie w solidne linie

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podręczników.

...
Czytaj więcej

Gotowy, aby rozpocząć?

Nuget Downloads 6,236,385Wersja:2026.9właśnie wydany

Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta
Biblioteka C# NuGet dla plików PDF
Zainstaluj za pomocą NuGet

Wersja: 2026.9

PM > Install-Package IronOcr
nuget.org/packages/IronOcr/
  1. W Eksploratorze Rozwiązań, kliknij prawym przyciskiem Myszy na Odwołania, Zarządzaj pakietami NuGet
  2. Wybierz Przeglądaj i szukaj „IronOCR”
  3. Wybierz pakiet i zainstaluj
DLL PDF dla C#
Pobierz DLL

Wersja: 2026.9

lub pobierz Instalator Windows tutaj.

  1. Pobierz i rozpakuj IronOCR do lokalizacji, takiej jak ~/Libs w katalogu Solution
  2. W Eksploratorze rozwiązań Visual Studio kliknij prawym przyciskiem myszy Odwołania. Wybierz Przeglądaj, „IronOCR.dll”

Licencje od 749 USD

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Your trial license will be sent to your email address

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Otrzymaj swoją Konsultację Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta