Extrahieren von Leseergebnissen

Chaknith related to Extrahieren von Leseergebnissen
Chaknith Bin
31. Oktober 2023
Aktualisiert 10. Dezember 2024
Teilen Sie:
This article was translated from English: Does it need improvement?
Translated
View the article in English

Das Lese- oder OCR-Ergebnis enthält eine Fülle von Informationen zu den erkannten Absätzen, Zeilen, Wörtern und einzelnen Zeichen. Für jedes dieser Elemente liefert das Ergebnis eine umfassende Reihe von Details.

Für jedes Element liefert er den Textinhalt, präzise X- und Y-Koordinaten, Abmessungen (Breite und Höhe), Textrichtung (von links nach rechts oder von oben nach unten) und die Position in einem CropRectangle-Objekt.

Legen Sie los mit IronOCR

Beginnen Sie noch heute mit der Verwendung von IronOCR in Ihrem Projekt mit einer kostenlosen Testversion.

Erster Schritt:
green arrow pointer



Daten in OcrResult

Der Ergebniswert enthält nicht nur den extrahierten Text, sondern auch Informationen über Seiten, Absätze, Zeilen, Wörter, Zeichen und Strichcodes, die IronOcr im PDF- und Bilddokument entdeckt hat. Sie können auf diese Informationen über das zurückgegebene OcrResult-Objekt mithilfe der Read-Methode zugreifen.

:path=/static-assets/ocr/content-code-examples/how-to/read-results-output-information.cs
using IronOcr;
using System;
using static IronOcr.OcrResult;

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

// Add image
using var imageInput = new OcrImageInput("sample.jpg");
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Retrieve list of detected paragraphs
Paragraph[] paragraphs = ocrResult.Paragraphs;

// Output information to console
Console.WriteLine($"Text: {paragraphs[0].Text}");
Console.WriteLine($"X: {paragraphs[0].X}");
Console.WriteLine($"Y: {paragraphs[0].Y}");
Console.WriteLine($"Width: {paragraphs[0].Width}");
Console.WriteLine($"Height: {paragraphs[0].Height}");
Console.WriteLine($"Text direction: {paragraphs[0].TextDirection}");
Imports IronOcr
Imports System
Imports IronOcr.OcrResult

' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()

' Add image
Private imageInput = New OcrImageInput("sample.jpg")
' Perform OCR
Private ocrResult As OcrResult = ocrTesseract.Read(imageInput)

' Retrieve list of detected paragraphs
Private paragraphs() As Paragraph = ocrResult.Paragraphs

' Output information to console
Console.WriteLine($"Text: {paragraphs(0).Text}")
Console.WriteLine($"X: {paragraphs(0).X}")
Console.WriteLine($"Y: {paragraphs(0).Y}")
Console.WriteLine($"Width: {paragraphs(0).Width}")
Console.WriteLine($"Height: {paragraphs(0).Height}")
Console.WriteLine($"Text direction: {paragraphs(0).TextDirection}")
$vbLabelText   $csharpLabel
Daten in OcrResult

Für jeden Teil des Textes, wie z. B. Absätze, Zeilen, Wörter und einzelne Zeichen, stellen wir die folgenden Informationen bereit:

  • Text: Der eigentliche Text in Form einer Zeichenkette.
  • X: Die Position vom linken Rand der Seite in Pixeln.
  • Y: Die Position vom oberen Rand der Seite in Pixeln.
  • Breite: Die Breite in Pixeln.
  • Höhe: Die Höhe in Pixeln.
  • Text-Richtung: Die Richtung, in der der Text gelesen wurde, z. B. "Von links nach rechts" oder "Von oben nach unten"
  • Standort: Ein Rechteck, das die Position des Textes auf der Seite in Pixeln angibt.

Absatz-, Zeilen-, Wort- und Zeichenvergleich

Nachstehend finden Sie einen Vergleich der erkannten Absätze, Zeilen, Wörter und Zeichen.

Highlight paragraph
Highlight line
Highlight word
Zeichen hervorheben

Barcode und QR-Code

Das ist korrekt! IronOcr kann Barcodes und QR-Codes lesen. Obwohl das Feature möglicherweise nicht so robust ist wie IronBarcode, bietet IronOCR Unterstützung für gängige Barcode-Typen. Um die Barcode-Erkennung zu aktivieren, setzen Sie die Eigenschaft Configuration.ReadBarCodes auf true.

Zusätzlich können wertvolle Informationen aus dem erkannten Barcode extrahiert werden, einschließlich seines Formats, Wertes, seiner Koordinaten (x, y), Höhe, Breite und Position als IronSoftware.Drawing.Rectangle-Objekt. Diese Rectangle-Klasse in IronDrawing ermöglicht eine präzise Positionierung im Dokument.

:path=/static-assets/ocr/content-code-examples/how-to/read-results-barcodes.cs
using IronOcr;
using System;
using static IronOcr.OcrResult;

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

// Enable barcodes detection
ocrTesseract.Configuration.ReadBarCodes = true;

// Add image
using OcrInput ocrInput = new OcrInput();
ocrInput.LoadPdf("sample.pdf");

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

// Output information to console
foreach(var barcode in ocrResult.Barcodes)
{
    Console.WriteLine("Format = " + barcode.Format);
    Console.WriteLine("Value = " + barcode.Value);
    Console.WriteLine("X = " + barcode.X);
    Console.WriteLine("Y = " + barcode.Y);
}
Console.WriteLine(ocrResult.Text);
Imports IronOcr
Imports System
Imports IronOcr.OcrResult

' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()

' Enable barcodes detection
ocrTesseract.Configuration.ReadBarCodes = True

' Add image
Using ocrInput As New OcrInput()
	ocrInput.LoadPdf("sample.pdf")
	
	' Perform OCR
	Dim ocrResult As OcrResult = ocrTesseract.Read(ocrInput)
	
	' Output information to console
	For Each barcode In ocrResult.Barcodes
		Console.WriteLine("Format = " & barcode.Format)
		Console.WriteLine("Value = " & barcode.Value)
		Console.WriteLine("X = " & barcode.X)
		Console.WriteLine("Y = " & barcode.Y)
	Next barcode
	Console.WriteLine(ocrResult.Text)
End Using
$vbLabelText   $csharpLabel

Ausgabe

Barcodes erkennen
Chaknith related to Ausgabe
Software-Ingenieur
Chaknith ist der Sherlock Holmes der Entwickler. Zum ersten Mal kam ihm der Gedanke, dass er eine Zukunft in der Softwareentwicklung haben könnte, als er zum Spaß an Code Challenges teilnahm. Sein Schwerpunkt liegt auf IronXL und IronBarcode, aber er ist stolz darauf, Kunden mit jedem Produkt zu helfen. Chaknith nutzt sein Wissen aus direkten Gesprächen mit Kunden, um die Produkte selbst weiter zu verbessern. Sein anekdotisches Feedback geht über Jira-Tickets hinaus und unterstützt die Produktentwicklung, die Dokumentation und das Marketing, um das Gesamterlebnis der Kunden zu verbessern.Wenn er nicht im Büro ist, lernt er über maschinelles Lernen, programmiert und wandert.