IRONSOFTWAREHOME

Zapisywanie wyników OCR jako hOCR HTML w języku C# za pomocą IronOCR

Curtis Chau
Curtis Chau
Updated: 4 czerwca 2026

IronOCR umożliwia deweloperom zapisywanie wyników OCR jako plików HTML hOCR, ustawiając RenderHocr na true i używając metod SaveAsHocrFile lub SaveAsHocrString, zachowując układ tekstu i współrzędne znaków w strukturze HTML.

Szybki start: Zapisywanie wyników OCR jako pliku hOCR HTML

Włącz renderowanie hOCR i eksportuj wyniki bezpośrednio do pliku HTML za pomocą jednej konfiguracji i jednego wywołania metody.

  1. 1Install IronOCR with NuGet Package Manager

    PM > Install-Package IronOcr

  2. 2Skopiuj i uruchom ten fragment kodu.

    var hocr = new IronTesseract { Configuration = { RenderHocr = true } }.Read(new OcrInput("image.png")).SaveAsHocrString();
    C#
  3. 3Wdrożenie do testowania w środowisku produkcyjnym

    Rozpocznij używanie IronOCR w swoim projekcie już dziś z darmową wersją próbną
    arrow pointer

Czym jest hOCR i dlaczego warto z niego korzystać?

hOCR, co oznacza "OCR oparty na HTML", to format pliku używany do przedstawiania wyników optycznego rozpoznawania znaków (OCR) w uporządkowany sposób. Pliki hOCR są zapisane w formacie HTML i umożliwiają przechowywanie rozpoznanego tekstu, informacji o układzie oraz współrzędnych każdego rozpoznanego znaku w obrazie lub dokumencie. Ta ustrukturyzowana forma sprawia, że hOCR jest szczególnie przydatny w aplikacjach wymagających danych o położeniu tekstu, takich jak indeksowanie dokumentów, narzędzia ułatwiające dostęp oraz zaawansowane implementacje wyszukiwania.

Format hOCR jest niezbędny dla programistów tworzących aplikacje, które muszą rozumieć nie tylko, jaki tekst jest obecny, ale także gdzie ten tekst pojawia się w oryginalnym dokumencie. Te informacje przestrzenne umożliwiają takie funkcje, jak podświetlanie tekstu w celu debugowania, tworzenie klikalnych nakładek na oryginalnych obrazach oraz zachowanie integralności układu dokumentu podczas konwersji zeskanowanych dokumentów do formatów dostępnych. W przypadku aplikacji Enterprise przetwarzających zeskanowane dokumenty, hOCR stanowi podstawę dla zaawansowanych procesów rozumienia dokumentów i ekstrakcji danych.

Jak wyeksportować wyniki OCR jako pliki hOCR?

Aby wyeksportować wynik jako hOCR, najpierw włącz właściwość Configuration.RenderHocr, ustawiając ją na true. Po uzyskaniu obiektu OcrResult z metody Read, użyj metody SaveAsHocrFile, aby wyeksportować wynik OCR jako HTML. Ta metoda generuje plik HTML zawierający wynik odczytu dokumentów wejściowych. Poniższy kod ilustruje wykorzystanie następującego przykładowego pliku TIFF.

using IronOcr;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Enable render as hOCR
ocrTesseract.Configuration.RenderHocr = true;

// Add image
using var imageInput = new OcrImageInput("Potter.tiff");
imageInput.Title = "Html Title";

// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Export as HTML
ocrResult.SaveAsHocrFile("result.html");

Klasa OcrInput zapewnia szerokie możliwości przygotowania obrazów przed przetwarzaniem OCR. Można stosować filtry, określać interesujące obszary oraz obsługiwać różne formaty danych wejściowych, w tym wielostronicowe pliki TIFF. W przypadku ekstrakcji tekstu z plików PDF za pomocą OCR stosuje się te same metody eksportu hOCR.

Dlaczego ustawienie RenderHocr ma znaczenie?

Ustawienie właściwości RenderHocr na true instruuje IronOCR, aby wygenerował niezbędną strukturę hOCR podczas procesu OCR. Bez tej konfiguracji metody SaveAsHocrFile i SaveAsHocrString nie wygenerują poprawnie sformatowanego wyniku hOCR z zachowaniem układu. Ta konfiguracja musi być ustawiona przed wywołaniem metody Read, ponieważ wpływathow engine Tesseract processes and structures the output data. na to, jak silnik Tesseract przetwarza i strukturyzuje dane wyjściowe.

Format hOCR zachowuje kluczowe metadane, w tym:

  • Prostokąty ograniczające na poziomie znaków
  • Wyniki pewności słowa
  • Struktura wierszy i akapitów
  • Wymiary strony i informacje o rozdzielczości (DPI)
  • Charakterystyka czcionki, jeśli jest wykrywalna

Te metadane są szczególnie przydatne podczas wdrażania procesów przetwarzania obrazu lub tworzenia systemów, które muszą rozumieć strukturę dokumentu wykraczającą poza proste wyodrębnianie tekstu.

Jakie typy plików obsługują eksport hOCR?

IronOCR obsługuje eksport hOCR z różnych formatów obrazów, w tym TIFF, PNG, JPEG, BMP i GIF. Dokumenty PDF można również przetwarzać i eksportować jako hOCR, zachowując informacje o tekście i układzie każdej strony w strukturze HTML. Biblioteka płynnie obsługuje zarówno obrazy jednostronicowe, jak i dokumenty wielostronicowe.

Aby uzyskać optymalne wyniki w przypadku różnych typów plików:

  • TIFF: Idealny do skanowanych dokumentów, obsługuje przetwarzanie wielostronicowe
  • PDF: Doskonały do treści mieszanych (tekst i obrazy)
  • PNG/JPEG: Najlepsze do zdjęć lub zrzutów ekranu wymagających OCR
  • BMP: Nieskompresowany format odpowiedni do skanów o wysokiej jakości

W przypadku specjalistycznych typów dokumentów, takich jak paszporty lub tablice rejestracyjne, format hOCR pomaga zachować relacje przestrzenne między różnymi elementami tekstowymi, ułatwiając wyodrębnianie określonych pól na podstawie ich położenia.

Jak mogę wyeksportować wyniki OCR jako ciągi znaków HTML?

Używając tego samego przykładowego obrazu TIFF, skorzystaj z metody SaveAsHocrString, aby wyeksportować wynik OCR jako ciąg HTML. Ta metoda zwraca ciąg znaków HTML.

// Export as HTML string
string hocr = ocrResult.SaveAsHocrString();

Wynikowy ciąg znaków zawiera kompletny znacznik hOCR, który można dalej przetwarzać, przechowywać w bazach danych lub integrować z aplikacjami internetowymi. Takie podejście jest szczególnie przydatne podczas tworzenia systemów przeszukiwalnych plików PDF lub wdrażania niestandardowych rozwiązań do indeksowania dokumentów. Dla programistów pracujących w 125 językach międzynarodowych format hOCR zachowuje atrybuty tekstu specyficzne dla danego języka oraz informacje o kierunku czytania.

Kiedy należy używać wyjścia w postaci ciągu znaków zamiast plików?

Wyjście w postaci ciągu znaków jest idealne, gdy trzeba przetwarzać lub modyfikować dane hOCR w pamięci, integrować je z usługami internetowymi lub przechowywać wyniki w bazie danych. Takie podejście pozwala uniknąć zależności od systemu plików i umożliwia dynamiczne generowanie kodu HTML dla aplikacji internetowych. Typowe przypadki użycia obejmuja:

  • Integracja z interfejsem API: zwracanie danych hOCR bezpośrednio w odpowiedziach API
  • Przechowywanie w bazie danych: Przechowuj wyniki OCR wraz z metadanymi dokumentów
  • Przetwarzanie w czasie rzeczywistym: przetwarzaj wyniki bez obciążenia operacjami wejścia/wyjścia na dysku
  • Cloud Functions: Praca w środowiskach bezserwerowych z ograniczonym dostępem do plików
  • Systemy zarządzania treścią: Integracja wyników OCR z istniejącymi procesami obiegu dokumentów

W przypadku aplikacji wymagających śledzenia postępów, wyjście w postaci ciągów znaków umożliwia natychmiastowe przetwarzanie częściowych wyników w miarę ich udostępniania. Jest to szczególnie przydatne podczas wdrażania wielowątkowego przetwarzania OCR, w którym wiele dokumentów jest przetwarzanych jednocześnie.

Jak przetworzyć wiele stron na ciągi znaków HTML?

Podczas pracy z dokumentami wielostronicowymi, SaveAsHocrString konsoliduje wszystkie strony w jeden ciąg HTML z odpowiednimi podziałami stron. Treść każdej strony jest zawarta w odpowiednich elementach hOCR, co pozwala zachować strukturę dokumentu i granice stron.

// Processing multi-page documents
using var multiPageInput = new OcrPdfInput("multi-page-document.pdf");
multiPageInput.Title = "Multi-Page Document";

 // Configure for hOCR output
 IronTesseract tesseract = new IronTesseract();
 tesseract.Configuration.RenderHocr = true;

 // Read all pages
 OcrResult result = tesseract.Read(multiPageInput);

 // Export as single HTML string with all pages
 string fullHocr = result.SaveAsHocrString();
C#

To podejście działa płynnie ze strumieniami PDF i obsługuje zaawansowane scenariusze, takie jak przetwarzanie określonych zakresów stron lub stosowanie różnych konfiguracji OCR do różnych stron.

Zaawansowane wskazówki dotyczące wdrażania hOCR

Jakie są najlepsze praktyki dotyczące jakości wyników hOCR?

Aby uzyskać jak najlepszą jakość wyników hOCR, warto rozważyć zastosowanie filtrów optymalizujących obraz przed przetwarzaniem:

var input = new OcrImageInput("document.png");
input.DeNoise();  // Remove image noise
input.Deskew();   // Correct image rotation
input.Scale(2);   // Upscale for better recognition

IronTesseract ocr = new IronTesseract();
ocr.Configuration.RenderHocr = true;
var result = ocr.Read(input);

W przypadku skanów o niskiej jakości dodatkowe etapy przetwarzania wstępnego mogą znacznie poprawić dokładność hOCR. Kreator filtrów pomaga określić optymalne kombinacje filtrów dla konkretnych typów dokumentów.

W jaki sposób struktura hOCR wspiera zaawansowane przetwarzanie?

Wygenerowany kod hOCR jest zgodny ze standardową specyfikacją, z zagnieżdżonymi elementami div reprezentującymi hierarchię dokumentu:

<div class='ocr_page' title='bbox 0 0 2480 3508'>
  <div class='ocr_carea' title='bbox 156 114 2324 3395'>
    <p class='ocr_par' title='bbox 157 114 2323 164'>
      <span class='ocr_line' title='bbox 157 114 2323 164'>
        <span class='ocr_word' title='bbox 157 114 294 161'>Hello</span>
        <span class='ocr_word' title='bbox 334 119 483 161'>World</span>
      </span>
    </p>
  </div>
</div>
HTML

Taka struktura umożliwia precyzyjne wyodrębnianie fragmentów tekstu oraz zaawansowaną analizę dokumentów, co sprawia, że jest ona przydatna w aplikacjach wymagających przestrzennych relacji tekstowych lub zachowania układu. W przypadku ekstrakcji tabel format hOCR pomaga zachować strukturę tabelaryczną i relacje między komórkami.

Atrybuty bbox (prostokąt ograniczający) zawierają współrzędne w formacie "bbox left top right bottom", dostarczając dane o położeniu z dokładnością do pikseli dla każdego elementu tekstowego. Te informacje sa kluczowe dla:

  • Tworzenia interaktywnych przeglądarek dokumentów z wyborem tekstu
  • Implementacji systemów redakcji, ktore zachowuja uklad
  • Budowania narzędzi dostępności, ktore utrzymuja kolejnosc czytania
  • Rozwijania systemów porównania dokumentów

Dla programistów wymagajacych jeszcze bardziej szczegółowych opcji konfiguracji, szczegółowy przewodnik konfiguracyjny Tesseract dostarcza zaawansowanych ustawien, ktore wpływają na jakosc i strukture wyjscia hOCR.

RenderHocr

Często Zadawane Pytania

Czym jest hOCR i dlaczego jest przydatne w aplikacjach OCR?

hOCR (HTML-based OCR) to format pliku, który przedstawia wyniki OCR w ustrukturyzowanym HTML, przechowując zarówno rozpoznany tekst, jak i informacje przestrzenne, takie jak współrzędne znaków. IronOCR wspiera eksport hOCR, co jest cenne dla aplikacji wymagających danych o pozycjach tekstu, indeksowania dokumentów, narzędzi dostępności oraz zachowania integralności układu przy przetwarzaniu skanowanych dokumentów.

Jak włączyć wyjście hOCR w mojej aplikacji OCR w C#?

Aby włączyć wyjście hOCR z IronOCR, ustaw właściwość Configuration.RenderHocr na true w instancji IronTesseract. To mówi IronOCR, aby przygotowało wyniki OCR w formacie hOCR, co pozwala na ich eksportowanie za pomocą metod SaveAsHocrFile lub SaveAsHocrString.

Jakie metody są dostępne do eksportu wyników hOCR?

IronOCR oferuje dwie metody eksportu wyników hOCR: SaveAsHocrFile(), która zapisuje wynik bezpośrednio do pliku HTML na dysku, oraz SaveAsHocrString(), która zwraca HTML hOCR jako ciąg do dalszego przetwarzania lub przechowywania w aplikacji.

Czy mogę eksportować wyniki OCR jako hOCR za pomocą jednej linii kodu?

Tak, IronOCR umożliwia jednoliniowy eksport hOCR przy użyciu łączenia metod. Możesz utworzyć instancję IronTesseract z włączonym RenderHocr, wczytać dane wejściowe i wywołać SaveAsHocrString() w jednej instrukcji: var hocr = new IronTesseract { Configuration = { RenderHocr = true } }.Read(new OcrInput("image.png")).SaveAsHocrString();

Jakiego rodzaju informacje przestrzenne hOCR zachowuje z wyników OCR?

hOCR zachowuje informacje o układzie i współrzędne każdego rozpoznanego znaku w oryginalnym obrazie lub dokumencie. Eksport hOCR IronOCR przechowuje te dane przestrzenne, umożliwiając takie funkcje jak podświetlanie tekstu do debugowania, tworzenie klikalnych nakładek na obrazach i zrozumienie, gdzie tekst pojawia się w oryginalnym dokumencie.

What are the advantages of exporting OCR results as HTML strings?

Exporting OCR results as HTML strings allows for in-memory processing, integration with APIs, and storage in databases without file dependencies. This approach is beneficial for real-time applications, search systems, and cloud-based services.

How does hOCR format support advanced document processing tasks?

hOCR's structured format with bounding box data allows for precise text location extraction, enabling features like interactive text viewers, layout-preserving redaction, and accessibility tools. It supports advanced tasks requiring spatial text relationships.

What preprocessing steps improve hOCR output quality in IronOCR?

Applying image optimization filters such as de-noising, deskewing, and upscaling before OCR processing can significantly enhance hOCR output quality, especially for low-quality scans or complex document formats.

Which scenarios benefit from using HTML string output instead of file output in OCR?

HTML string output is ideal for scenarios requiring immediate processing in memory, such as web API integration, database storage, real-time analysis, and serverless applications lacking file system access.

How does IronOCR handle multi-page documents when exporting to hOCR?

IronOCR consolidates OCR results from multi-page documents into a single HTML string or file with appropriate page divisions, maintaining document structure and content continuity across pages.

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

Odbierz swój BEZPŁATNY

30-dniowy klucz próbny natychmiast.

bullet_checkedNie wymaga karty kredytowej ani tworzenia konta
test_punktorówTestuj w produkcji
bez znaków wodnych
kalendarz_punktorów30 dni w pełni
funkcjonalny produkt
wsparcie_punktorów24/5 wsparcie techniczne
w trakcie okresu próbnego
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