Deutsche OCR in C# und .NET
Andere Versionen dieses Dokuments:
IronOCR ist eine C#-Softwarekomponente, mit der .NET-Codierer Text aus Bildern und PDF-Dokumenten in 126 Sprachen, einschließlich Deutsch, lesen können.
Es handelt sich um eine fortschrittliche Tesseract-Gabel, die exklusiv für .NET-Entwickler entwickelt wurde und regelmäßig andere Tesseract-Engines hinsichtlich Geschwindigkeit und Genauigkeit übertrifft.
Inhalt von IronOcr.Languages.German
Dieses Paket enthält 61 OCR-Sprachen für .NET:
- Deutsche
- GermanBest
- GermanFast
- GermanFraktur
Herunterladen
Deutsches Sprachpaket [Deutsch]
- Download as Postleitzahl
- Install with NuGet
Installation
Als erstes müssen wir unser deutsches OCR-Paket in Ihrem .NET-Projekt installieren.
PM> Install-Package IronOCR.Languages.German
Codebeispiel
Dieses C#-Codebeispiel liest deutschen Text aus einem Bild- oder PDF-Dokument.
// PM> Install-Package IronOcr.Languages.German
using IronOcr;
var Ocr = new IronTesseract();
// Set the OCR language to German.
Ocr.Language = OcrLanguage.German;
using (var Input = new OcrInput(@"images\German.png"))
{
// Perform OCR on the input image.
var Result = Ocr.Read(Input);
// Extract all recognized text.
var AllText = Result.Text;
}
// PM> Install-Package IronOcr.Languages.German
using IronOcr;
var Ocr = new IronTesseract();
// Set the OCR language to German.
Ocr.Language = OcrLanguage.German;
using (var Input = new OcrInput(@"images\German.png"))
{
// Perform OCR on the input image.
var Result = Ocr.Read(Input);
// Extract all recognized text.
var AllText = Result.Text;
}
' PM> Install-Package IronOcr.Languages.German
Imports IronOcr
Private Ocr = New IronTesseract()
' Set the OCR language to German.
Ocr.Language = OcrLanguage.German
Using Input = New OcrInput("images\German.png")
' Perform OCR on the input image.
Dim Result = Ocr.Read(Input)
' Extract all recognized text.
Dim AllText = Result.Text
End Using
Warum IronOCR wählen?
IronOCR ist eine einfach zu installierende, vollständige und gut dokumentierte .NET-Softwarebibliothek.
Wählen Sie IronOCR, um eine Genauigkeit von 99,8% + OCR zu erreichen, ohne externe Webdienste, laufende Gebühren oder vertrauliche Dokumente über das Internet zu verwenden.
Warum C#-Entwickler IronOCR gegenüber Vanilla Tesseract wählen:
- Als einzelne DLL oder NuGet installieren
- Lieferumfang für Tesseract 5, 4 und 3 Motoren.
- Genauigkeit 99,8% übertrifft den normalen Tesseract deutlich.
- Blitzgeschwindigkeit und MultiThreading
- Kompatibel mit MVC-, WebApp-, Desktop-, Konsolen- und Serveranwendungen
- Keine Exes oder C ++ - Code zum Arbeiten
- Volle PDF OCR-Unterstützung
- OCR für fast jede Bilddatei oder PDF
- Volle Unterstützung für .NET Core, Standard und FrameWork
- Bereitstellung unter Windows, Mac, Linux, Azure, Docker, Lambda, AWS
- Lesen Sie Barcodes und QR-Codes
- Exportieren Sie OCR als XHTML
- Exportieren Sie OCR in durchsuchbare PDF-Dokumente
- Multithreading-Unterstützung
- 126 internationale Sprachen, die alle über NuGet- oder OcrData-Dateien verwaltet werden
- Extrahieren Sie Bilder, Koordinaten, Statistiken und Schriftarten. Nicht nur Text.
- Kann verwendet werden, um Tesseract OCR in kommerziellen und proprietären Anwendungen neu zu verteilen.
IronOCR leuchtet bei der Arbeit mit Bildern aus der realen Welt und unvollständigen Dokumenten wie Fotos oder Scans mit niedriger Auflösung, die möglicherweise digitales Rauschen oder Unvollkommenheiten aufweisen.
Andere kostenlose OCR- Bibliotheken für die .NET-Plattform, wie z. B. andere .net-Tesseract-APIs und Webdienste, funktionieren in diesen realen Anwendungsfällen nicht so gut.
OCR mit Tesseract 5 - Codierung in C# starten
Das folgende Codebeispiel zeigt, wie einfach es ist, mit C# oder VB .NET Text aus einem Bild zu lesen.
Einzeiler
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
Dim Text As String = (New IronTesseract()).Read("img\Screenshot.png").Text
Konfigurierbare Hallo Welt
// PM> Install-Package IronOcr.Languages.German
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
using (var Input = new OcrInput()){
// Add image(s) for OCR
Input.AddImage("images/sample.jpeg");
// You can add as many images as needed
var Result = Ocr.Read(Input);
// Output the text result to the console
Console.WriteLine(Result.Text);
}
// PM> Install-Package IronOcr.Languages.German
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
using (var Input = new OcrInput()){
// Add image(s) for OCR
Input.AddImage("images/sample.jpeg");
// You can add as many images as needed
var Result = Ocr.Read(Input);
// Output the text result to the console
Console.WriteLine(Result.Text);
}
' PM> Install-Package IronOcr.Languages.German
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.German
Using Input = New OcrInput()
' Add image(s) for OCR
Input.AddImage("images/sample.jpeg")
' You can add as many images as needed
Dim Result = Ocr.Read(Input)
' Output the text result to the console
Console.WriteLine(Result.Text)
End Using
C# PDF OCR
Der gleiche Ansatz kann auch zum Extrahieren von Text aus einem PDF-Dokument verwendet werden.
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// We can also specify specific PDF page numbers for OCR
var Result = Ocr.Read(input);
Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// 1 page for each page of the PDF
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// We can also specify specific PDF page numbers for OCR
var Result = Ocr.Read(input);
Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// 1 page for each page of the PDF
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.German
Using input = New OcrInput()
input.AddPdf("example.pdf", "password")
' We can also specify specific PDF page numbers for OCR
Dim Result = Ocr.Read(input)
Console.WriteLine(Result.Text)
Console.WriteLine($"{Result.Pages.Count()} Pages")
' 1 page for each page of the PDF
End Using
OCR für mehrseitige TIFFs
OCR Lesen des TIFF-Dateiformats einschließlich mehrseitiger Dokumente. TIFF kann auch direkt in eine PDF-Datei mit durchsuchbarem Text konvertiert werden.
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
using (var Input = new OcrInput()){
Input.AddMultiFrameTiff("multi-frame.tiff");
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
using (var Input = new OcrInput()){
Input.AddMultiFrameTiff("multi-frame.tiff");
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.German
Using Input = New OcrInput()
Input.AddMultiFrameTiff("multi-frame.tiff")
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
Barcodes und QR
Eine einzigartige Funktion von IronOCR ist, dass es Barcodes und QR-Codes aus Dokumenten lesen kann, während nach Text gesucht wird. Instanzen der OcrResult.OcrBarcode
Klasse geben dem Entwickler detaillierte Informationen zu jedem gescannten Barcode.
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Configuration.ReadBarCodes = true;
using (var input = new OcrInput())
{
input.AddImage("img/Barcode.png");
var Result = Ocr.Read(input);
foreach (var Barcode in Result.Barcodes)
{
Console.WriteLine(Barcode.Value);
// Type and location properties are also available
}
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Configuration.ReadBarCodes = true;
using (var input = new OcrInput())
{
input.AddImage("img/Barcode.png");
var Result = Ocr.Read(input);
foreach (var Barcode in Result.Barcodes)
{
Console.WriteLine(Barcode.Value);
// Type and location properties are also available
}
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Configuration.ReadBarCodes = True
Using input = New OcrInput()
input.AddImage("img/Barcode.png")
Dim Result = Ocr.Read(input)
For Each Barcode In Result.Barcodes
Console.WriteLine(Barcode.Value)
' Type and location properties are also available
Next Barcode
End Using
OCR für bestimmte Bildbereiche
Alle Scan- und Lesemethoden von IronOCR bieten die Möglichkeit, genau anzugeben, von welchem Teil einer Seite oder von welchen Seiten wir Text lesen möchten. Dies ist sehr nützlich, wenn wir standardisierte Formulare betrachten, und kann sehr viel Zeit sparen und die Effizienz verbessern.
Um Schnittbereiche zu verwenden, müssen wir einen Systemverweis auf System.Drawing
hinzufügen, damit wir das System.Drawing.Rectangle
Objekt verwenden können.
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Dimensions are in pixels
Input.Add("document.png", ContentArea);
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Dimensions are in pixels
Input.Add("document.png", ContentArea);
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.German
Using Input = New OcrInput()
Dim ContentArea = New System.Drawing.Rectangle() With {
.X = 215,
.Y = 1250,
.Height = 280,
.Width = 1335
}
' Dimensions are in pixels
Input.Add("document.png", ContentArea)
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
OCR für Scans geringer Qualität
Die IronOCR OcrInput
Klasse kann auch Scans lesen, die normaler Tesseract nicht lesen kann.
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // Fix digital noise and poor scanning quality
Input.Deskew(); // Correct rotation and perspective issues
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // Fix digital noise and poor scanning quality
Input.Deskew(); // Correct rotation and perspective issues
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.German
Using Input = New OcrInput("img\Potter.LowQuality.tiff")
Input.DeNoise() ' Fix digital noise and poor scanning quality
Input.Deskew() ' Correct rotation and perspective issues
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
Exportieren Sie OCR-Ergebnisse als durchsuchbares PDF
Bild zu PDF mit kopierbaren Textzeichenfolgen. Kann von Suchmaschinen und Datenbanken indiziert werden.
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
using (var Input = new OcrInput()){
Input.Title = "Quarterly Report";
Input.AddImage("image1.jpeg");
Input.AddImage("image2.png");
Input.AddImage("image3.gif");
var Result = Ocr.Read(Input);
Result.SaveAsSearchablePdf("searchable.pdf");
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
using (var Input = new OcrInput()){
Input.Title = "Quarterly Report";
Input.AddImage("image1.jpeg");
Input.AddImage("image2.png");
Input.AddImage("image3.gif");
var Result = Ocr.Read(Input);
Result.SaveAsSearchablePdf("searchable.pdf");
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.German
Using Input = New OcrInput()
Input.Title = "Quarterly Report"
Input.AddImage("image1.jpeg")
Input.AddImage("image2.png")
Input.AddImage("image3.gif")
Dim Result = Ocr.Read(Input)
Result.SaveAsSearchablePdf("searchable.pdf")
End Using
TIFF zur durchsuchbaren PDF-Konvertierung
Konvertieren Sie ein TIFF-Dokument (oder eine beliebige Gruppe von Bilddateien) direkt in eine durchsuchbare PDF-Datei, die von Intranet-, Website- und Google-Suchmaschinen indiziert werden kann.
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
using (var Input = new OcrInput()){
Input.AddMultiFrameTiff("example.tiff");
var Result = Ocr.Read(Input);
Result.SaveAsSearchablePdf("searchable.pdf");
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
using (var Input = new OcrInput()){
Input.AddMultiFrameTiff("example.tiff");
var Result = Ocr.Read(Input);
Result.SaveAsSearchablePdf("searchable.pdf");
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.German
Using Input = New OcrInput()
Input.AddMultiFrameTiff("example.tiff")
Dim Result = Ocr.Read(Input)
Result.SaveAsSearchablePdf("searchable.pdf")
End Using
Exportieren Sie OCR-Ergebnisse als HTML
Konvertierung von OCR-Bildern in XHTML.
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
using (var Input = new OcrInput()){
Input.Title = "Html Title";
Input.AddImage("image1.jpeg");
var Result = Ocr.Read(Input);
Result.SaveAsHocrFile("results.html");
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
using (var Input = new OcrInput()){
Input.Title = "Html Title";
Input.AddImage("image1.jpeg");
var Result = Ocr.Read(Input);
Result.SaveAsHocrFile("results.html");
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.German
Using Input = New OcrInput()
Input.Title = "Html Title"
Input.AddImage("image1.jpeg")
Dim Result = Ocr.Read(Input)
Result.SaveAsHocrFile("results.html")
End Using
OCR-Bildverbesserungsfilter
IronOCR bietet einzigartige Filter für OcrInput
Objekte, um die OCR-Leistung zu verbessern.
Beispiel für einen Code zur Bildverbesserung
Erhöht die Qualität von OCR-Eingabebildern, um bessere und schnellere OCR-Ergebnisse zu erzielen.
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // Remove digital noise
Input.Deskew(); // Correct rotation and perspective
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // Remove digital noise
Input.Deskew(); // Correct rotation and perspective
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.German
Using Input = New OcrInput("LowQuality.jpeg")
Input.DeNoise() ' Remove digital noise
Input.Deskew() ' Correct rotation and perspective
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
Liste der OCR-Bildfilter
Zu den Eingangsfiltern zur Verbesserung der OCR-Leistung, die in IronOCR integriert sind, gehören:
- OcrInput.Rotate(double degrees) - Rotiert Bilder um einige Grad im Uhrzeigersinn. Verwenden Sie negative Zahlen für gegen den Uhrzeigersinn.
- OcrInput.Binarize() - Färbt jedes Pixel schwarz oder weiß ohne Mittelwert, kann die OCR-Leistung verbessern, wenn der Kontrast von Text zu Hintergrund sehr gering ist.
- OcrInput.ToGrayScale() - Verwandelt jedes Pixel in einen Graustufenton. Es ist unwahrscheinlich, dass die OCR-Genauigkeit verbessert wird, aber möglicherweise die Geschwindigkeit.
- OcrInput.Contrast() - Erhöht den Kontrast automatisch. Dieser Filter verbessert häufig die OCR-Geschwindigkeit und Genauigkeit bei Scans mit geringem Kontrast.
- OcrInput.DeNoise() - Entfernt digitales Rauschen. Dieser Filter sollte nur verwendet werden, wenn Rauschen erwartet wird.
- OcrInput.Invert() - Invertiert jede Farbe, z.B., Weiß wird schwarz, Schwarz wird weiß.
- OcrInput.Dilate() - Erweiterte Morphologie. Fügt den Grenzen von Objekten in einem Bild Pixel hinzu. Gegenüber von Erode.
- OcrInput.Erode() - Entfernt Pixel an Objektgrenzen.
- OcrInput.Deskew() - Dreht ein Bild, sodass es richtig und orthogonal ist, nützlich für OCR, da Tesseract-Toleranz für verzerrte Scans nur 5 Grad betragen kann.
- OcrInput.DeepCleanBackgroundNoise() - Starke Entfernung von Hintergrundgeräuschen. Verwenden Sie diesen Filter nur bei bekannten extremen Hintergrundgeräuschen, da er sonst die OCR-Genauigkeit sauberer Dokumente verringern kann und sehr CPU-teuer ist.
- OcrInput.EnhanceResolution - Verbessert die Auflösung von Bildern mit geringer Qualität durch automatische Detektion und Verbesserung.
CleanBackgroundNoise. Entfernt digitales Rauschen, Papierstücke und Unvollkommenheiten in einem Bild, um es lesbarer für OCR zu machen.
EnhanceContrast erhöht automatisch den Kontrast zwischen Text und Hintergrund und verbessert so die OCR-Genauigkeit.
EnhanceResolution skaliert automatisch Bilder mit niedrigerer Auflösung hoch und schärft den Text für bessere Lesbarkeit.
Language beinhaltet 126 internationale Sprachpakete, die frei kombiniert werden können.
Strategy unterstützt schnelle und statistisch verbesserte OCR-Strategien, abhängig von Anwendungsfall und benötigter Genauigkeit.
ColorSpace legt fest, ob OCR in Graustufen oder Vollfarbe durchgeführt wird.
DetectWhiteTextOnDarkBackgrounds. Erlaubt IronOCR, auch negativen Text (weißer Text auf dunklem Hintergrund) zu erkennen.
InputImageType. Gibt an, ob ein vollständiges Dokument oder ein Snippet gescannt wird.
RotateAndStraighten liest Texte richtig, selbst wenn sie gedreht oder perspektivisch verzerrt sind.
ReadBarcodes ermöglicht das gleichzeitige Scannen von Barcodes und Texten.
Farbtiefe. Höhere Farbtiefen verbessern die OCR-Qualität, steigern jedoch auch die Verarbeitungszeit.
126 Sprachpakete
IronOCR unterstützt 126 internationale Sprachen mit Sprachpaketen, die als DLLs verteilt werden und von dieser Website oder auch vom NuGet Package Manager heruntergeladen werden können.
Zu den Sprachen gehören Deutsch, Französisch, Englisch, Chinesisch, Japanisch und viele mehr. Es gibt spezielle Sprachpakete für Pass-MRZ, MICR-Schecks, Finanzdaten, Nummernschilder, und vieles mehr. Sie können auch jede Tesseract-Datei ".traineddata" verwenden - einschließlich derer, die Sie selbst erstellt haben.
Sprachbeispiel
Verwenden anderer OCR-Sprachen.
using IronOcr;
// PM> Install IronOcr.Languages.Arabic
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Arabic;
using (var input = new OcrInput())
{
input.AddImage("img/arabic.gif");
// Add image filters if needed
var Result = Ocr.Read(input);
// Save the recognized text. The Console may not print Arabic easily on Windows.
Result.SaveAsTextFile("arabic.txt");
}
using IronOcr;
// PM> Install IronOcr.Languages.Arabic
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Arabic;
using (var input = new OcrInput())
{
input.AddImage("img/arabic.gif");
// Add image filters if needed
var Result = Ocr.Read(input);
// Save the recognized text. The Console may not print Arabic easily on Windows.
Result.SaveAsTextFile("arabic.txt");
}
Imports IronOcr
' PM> Install IronOcr.Languages.Arabic
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Arabic
Using input = New OcrInput()
input.AddImage("img/arabic.gif")
' Add image filters if needed
Dim Result = Ocr.Read(input)
' Save the recognized text. The Console may not print Arabic easily on Windows.
Result.SaveAsTextFile("arabic.txt")
End Using
Beispiel für mehrere Sprachen
Es ist auch möglich, OCR mit mehreren Sprachen gleichzeitig durchzuführen. Dies kann wirklich dazu beitragen, Metadaten und URLs in englischer Sprache in Unicode-Dokumenten abzurufen.
using IronOcr;
// PM> Install IronOcr.Languages.ChineseSimplified
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.ChineseSimplified;
Ocr.AddSecondaryLanguage(OcrLanguage.German);
// We can add as many languages as needed
using (var input = new OcrInput())
{
input.Add("multi-language.pdf");
var Result = Ocr.Read(input);
Result.SaveAsTextFile("results.txt");
}
using IronOcr;
// PM> Install IronOcr.Languages.ChineseSimplified
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.ChineseSimplified;
Ocr.AddSecondaryLanguage(OcrLanguage.German);
// We can add as many languages as needed
using (var input = new OcrInput())
{
input.Add("multi-language.pdf");
var Result = Ocr.Read(input);
Result.SaveAsTextFile("results.txt");
}
Imports IronOcr
' PM> Install IronOcr.Languages.ChineseSimplified
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.ChineseSimplified
Ocr.AddSecondaryLanguage(OcrLanguage.German)
' We can add as many languages as needed
Using input = New OcrInput()
input.Add("multi-language.pdf")
Dim Result = Ocr.Read(input)
Result.SaveAsTextFile("results.txt")
End Using
Detaillierte OCR-Ergebnisobjekte
IronOCR gibt für jede OCR-Operation ein OCR-Ergebnisobjekt zurück. Im Allgemeinen verwenden Entwickler nur die Texteigenschaft dieses Objekts, um den Text aus dem Bild zu scannen. Das OCR-Ergebnis-DOM ist jedoch viel weiter fortgeschritten.
using IronOcr;
using System.Drawing; // Add reference to assembly
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //!Important
using (var Input = new OcrInput(@"images\sample.tiff"))
{
OcrResult Result = Ocr.Read(Input);
var Pages = Result.Pages;
var Words = Pages[0].Words;
var Barcodes = Result.Barcodes;
// Explore a detailed API here:
// - Pages, Blocks, Paragraphs, Lines, Words, Characters
// - Image export, font coordinates, statistical data
}
using IronOcr;
using System.Drawing; // Add reference to assembly
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.German;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //!Important
using (var Input = new OcrInput(@"images\sample.tiff"))
{
OcrResult Result = Ocr.Read(Input);
var Pages = Result.Pages;
var Words = Pages[0].Words;
var Barcodes = Result.Barcodes;
// Explore a detailed API here:
// - Pages, Blocks, Paragraphs, Lines, Words, Characters
// - Image export, font coordinates, statistical data
}
Imports IronOcr
Imports System.Drawing ' Add reference to assembly
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.German
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm
Ocr.Configuration.ReadBarCodes = True '!Important
Using Input = New OcrInput("images\sample.tiff")
Dim Result As OcrResult = Ocr.Read(Input)
Dim Pages = Result.Pages
Dim Words = Pages(0).Words
Dim Barcodes = Result.Barcodes
' Explore a detailed API here:
' - Pages, Blocks, Paragraphs, Lines, Words, Characters
' - Image export, font coordinates, statistical data
End Using
Performance
IronOCR funktioniert sofort, ohne dass die Leistung angepasst oder die Eingabebilder stark geändert werden müssen.
Geschwindigkeit ist rasant: IronOcr.2020+ ist bis zu 10-mal schneller und macht über 250% weniger Fehler als frühere Builds.
Lern mehr
Um mehr über OCR in C#, VB, F# oder einer anderen .NET-Sprache zu erfahren, lesen Sie bitte unsere Community-Tutorials, die Beispiele aus der Praxis für die Verwendung von IronOCR enthalten und die Nuancen zeigen, wie Sie das Beste aus Ihnen herausholen können diese Bibliothek.
Eine vollständige Objektreferenz für .NET-Entwickler ist ebenfalls verfügbar.