Get Started with OCR in C# and VB.NET

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronOCR ist eine C#-Softwarebibliothek, die es Softwareentwicklern der .NET-Plattform ermöglicht, Text aus Bildern und PDF-Dokumenten zu erkennen und zu lesen. Es ist eine reine .NET OCR-Bibliothek, die die fortschrittlichste Tesseract-Engine verwendet, die bekannt ist.

Installation

Installation mit NuGet Package Manager

Installieren Sie IronOcr in Visual Studio oder über die Kommandozeile mit dem NuGet Package Manager. Navigieren Sie in Visual Studio mit zur Konsole:

  • Werkzeuge ->
  • NuGet Paket Manager ->
  • Paketmanager-Konsole
Install-Package IronOcr

Weitere Informationen zu Versions-Updates und zur Installation finden Sie unter IronOcr auf NuGet.

Es gibt weitere IronOCR NuGet-Pakete für verschiedene Plattformen:

IronOcr.Extensions.AdvancedScan für Linux und macOS

Dieses Paket ist für Benutzer gedacht, die Linux und Mac verwenden und auch die erweiterten Funktionen von IronOcr nutzen möchten.

Fehlerbehebung

Mit dem neuen Update dieses Pakets kombiniert IronOCR die OpenCV-Abhängigkeiten innerhalb des Pakets, um es so zu rationalisieren, dass Entwickler, die derzeit die OpenCV-Abhängigkeiten importieren, den folgenden Fehler erhalten.

The type of namespace name `OpenCvSharp` could not be found(are you missing a using directive or an assembly reference)

Sie können die OpenCV-Namensräume sicher entfernen, und das Problem wird gelöst.

Laden Sie die IronOCR .ZIP herunter

Sie können IronOCR stattdessen auch als ZIP-Datei herunterladen. Klicken Sie auf direktes Herunterladen der DLL. Sobald Sie die .zip-Datei heruntergeladen haben:

Anleitung zur Installation von .NET Framework 4.0+:

  • Binden Sie die IronOcr.dll im Ordner net40 in Ihr Projekt ein
  • Und dann fügen Sie Referenzen zu Assembly hinzu:

    • System.Konfiguration
    • System.Drawing
    • System.Web

Anleitungen für .NET Standard & .NET Core 2.0+, & .NET 5

  • Binden Sie die IronOcr.dll im Ordner netstandard2.0 in Ihr Projekt ein
  • Und fügen Sie dann eine NuGet-Paketreferenz zu:

    • System.Drawing.Common 4.7 oder höher

Download des IronOCR-Installationsprogramms (nur Windows)

Eine weitere Möglichkeit ist das Herunterladen unseres IronOCR-Installationsprogramms, mit dem alle erforderlichen Ressourcen installiert werden, damit IronOCR sofort einsatzbereit ist. Bitte beachten Sie, dass diese Option nur für Windows-Systeme gilt. Zum Herunterladen des Installationsprogramms bitte hier klicken. Sobald Sie die .zip-Datei heruntergeladen haben:

Anleitung zur Installation von .NET Framework 4.0+:

  • Binden Sie die IronOcr.dll im Ordner net40 in Ihr Projekt ein
  • Und dann fügen Sie Referenzen zu Assembly hinzu:

    • System.Konfiguration
    • System.Drawing
    • System.Web

Anleitungen für .NET Standard & .NET Core 2.0+, & .NET 5

  • Binden Sie die IronOcr.dll im Ordner netstandard2.0 in Ihr Projekt ein
  • Und fügen Sie dann eine NuGet-Paketreferenz zu:

    • System.Drawing.Common 4.7 oder höher

Warum IronOCR wählen?

IronOCR ist eine einfach zu installierende, vollständige und gut dokumentierte .NET-Softwarebibliothek.

Entscheiden Sie sich für IronOCR, um eine OCR-Genauigkeit von 99,8 %+ zu erreichen, ohne externe Webdienste zu nutzen, laufende Gebühren zu zahlen oder vertrauliche Dokumente über das Internet zu versenden.

Warum C#-Entwickler IronOCR gegenüber Vanilla Tesseract bevorzugen:

  • Installation als einzelne DLL oder NuGet
  • Beinhaltet die Tesseract 5, 4 und 3 Engines sofort nach dem Auspacken.
  • Die Genauigkeit von 99,8 % übertrifft die des normalen Tesseract deutlich.
  • Rasante Geschwindigkeit und MultiThreading
  • MVC, WebApp, Desktop, Konsole & Server-Anwendung kompatibel
  • Kein Exes- oder C++-Code, mit dem gearbeitet werden muss
  • Vollständige PDF-OCR-Unterstützung
  • OCR für fast alle Bilddateien oder PDF-Dateien durchführen
  • Vollständige Unterstützung von .NET Core, Standard und Framework
  • Bereitstellung auf Windows, Mac, Linux, Azure, Docker, Lambda, AWS
  • Lesen von BarCodes und QR-Codes
  • OCR-Ergebnisse als XHTML exportieren
  • OCR in durchsuchbare PDF-Dokumente exportieren
  • Multithreading-Unterstützung
  • 125 internationale Sprachen, die alle über NuGet- oder OcrData-Dateien verwaltet werden
  • Bilder, Koordinaten, Statistiken und Schriftarten extrahieren. Nicht nur Text.
  • Kann zur Weitergabe von Tesseract OCR in kommerziellen und proprietären Anwendungen verwendet werden.

ironOCR glänzt bei der Arbeit mit realen Bildern und unvollkommenen Dokumenten wie Fotos oder Scans mit niedriger Auflösung, die digitales Rauschen oder Unvollkommenheiten aufweisen können

Andere kostenlose OCR-Bibliotheken für die .NET-Plattform, wie andere .NET Tesseract APIs und Webservices, sind für diese realen Anwendungsfälle nicht so gut geeignet.

OCR mit Tesseract 5 - Beginnen Sie mit der Codierung in C#;

Das folgende Codebeispiel zeigt, wie einfach es ist, mit C# oder VB .NET Text aus einem Bild zu lesen.

Einzeiler

:path=/static-assets/ocr/content-code-examples/get-started/get-started-1.cs
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
Dim Text As String = (New IronTesseract()).Read("img\Screenshot.png").Text
$vbLabelText   $csharpLabel

Konfigurierbares Hello World

:path=/static-assets/ocr/content-code-examples/get-started/get-started-2.cs
using IronOcr;

IronTesseract ocr = new IronTesseract();
using OcrInput input = new OcrInput();

// Add multiple images
input.LoadImage("images/sample.jpeg");

OcrResult result = ocr.Read(input);
Console.WriteLine(result.Text);
Imports IronOcr

Private ocr As New IronTesseract()
Private OcrInput As using

' Add multiple images
input.LoadImage("images/sample.jpeg")

Dim result As OcrResult = ocr.Read(input)
Console.WriteLine(result.Text)
$vbLabelText   $csharpLabel

C# PDF OCR

Der gleiche Ansatz kann auch verwendet werden, um Text aus einem beliebigen PDF-Dokument zu extrahieren.

:path=/static-assets/ocr/content-code-examples/get-started/get-started-3.cs
using IronOcr;

IronTesseract ocr = new IronTesseract();
using OcrInput input = new OcrInput();

// We can also select specific PDF page numbers to OCR
input.LoadPdf("example.pdf", Password: "password");

OcrResult result = ocr.Read(input);
Console.WriteLine(result.Text);

// 1 page for every page of the PDF
Console.WriteLine($"{result.Pages.Length} Pages");
Imports IronOcr

Private ocr As New IronTesseract()
Private OcrInput As using

' We can also select specific PDF page numbers to OCR
input.LoadPdf("example.pdf", Password:= "password")

Dim result As OcrResult = ocr.Read(input)
Console.WriteLine(result.Text)

' 1 page for every page of the PDF
Console.WriteLine($"{result.Pages.Length} Pages")
$vbLabelText   $csharpLabel

OCR für mehrseitige TIFFs

:path=/static-assets/ocr/content-code-examples/get-started/get-started-4.cs
using IronOcr;

IronTesseract ocr = new IronTesseract();
using OcrInput input = new OcrInput();
var pageindices = new int[] { 1, 2 };
input.LoadImageFrames("multi-frame.tiff", pageindices);
OcrResult result = ocr.Read(input);
Console.WriteLine(result.Text);
Imports IronOcr

Private ocr As New IronTesseract()
Private OcrInput As using
Private pageindices = New Integer() { 1, 2 }
input.LoadImageFrames("multi-frame.tiff", pageindices)
Dim result As OcrResult = ocr.Read(input)
Console.WriteLine(result.Text)
$vbLabelText   $csharpLabel

Barcodes und QR

Ein einzigartiges Merkmal von IronOCR ist, dass es Barcodes und QR-Codes von Dokumenten lesen kann, während es nach Text scannt. Instanzen der Klasse OcrResult.OcrBarcode geben dem Entwickler detaillierte Informationen über jeden gescannten Barcode.

:path=/static-assets/ocr/content-code-examples/get-started/get-started-5.cs
using IronOcr;

IronTesseract ocr = new IronTesseract();
ocr.Configuration.ReadBarCodes = true;

using OcrInput input = new OcrInput();
input.LoadImage("img/Barcode.png");

OcrResult Result = ocr.Read(input);
foreach (var Barcode in Result.Barcodes)
{
    // type and location properties also exposed
    Console.WriteLine(Barcode.Value);
}
Imports IronOcr

Private ocr As New IronTesseract()
ocr.Configuration.ReadBarCodes = True

Using input As New OcrInput()
	input.LoadImage("img/Barcode.png")
	
	Dim Result As OcrResult = ocr.Read(input)
	For Each Barcode In Result.Barcodes
		' type and location properties also exposed
		Console.WriteLine(Barcode.Value)
	Next Barcode
End Using
$vbLabelText   $csharpLabel

OCR für bestimmte Bereiche von Bildern

Alle Scan- und Lesemethoden von IronOCR bieten die Möglichkeit, genau anzugeben, von welchem Teil einer Seite oder von welchen Seiten wir den Text lesen möchten. Dies ist sehr nützlich, wenn es um standardisierte Formulare geht, und kann viel Zeit sparen und die Effizienz verbessern.

Um Beschnittbereiche zu verwenden, müssen wir eine Systemreferenz zu System.Drawing hinzufügen, damit wir das Objekt System.Drawing.Rectangle verwenden können.

:path=/static-assets/ocr/content-code-examples/get-started/get-started-6.cs
using IronOcr;

IronTesseract ocr = new IronTesseract();
using OcrInput input = new OcrInput();

// Dimensions are in pixel
var contentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };

input.LoadImage("document.png", contentArea);

OcrResult result = ocr.Read(input);
Console.WriteLine(result.Text);
Imports IronOcr

Private ocr As New IronTesseract()
Private OcrInput As using

' Dimensions are in pixel
Private contentArea = New System.Drawing.Rectangle() With {
	.X = 215,
	.Y = 1250,
	.Height = 280,
	.Width = 1335
}

input.LoadImage("document.png", contentArea)

Dim result As OcrResult = ocr.Read(input)
Console.WriteLine(result.Text)
$vbLabelText   $csharpLabel

OCR für Scans niedriger Qualität

Die IronOCR OcrInput-Klasse kann Scans korrigieren, die Tesseract nicht lesen kann.

:path=/static-assets/ocr/content-code-examples/get-started/get-started-7.cs
using IronOcr;

IronTesseract ocr = new IronTesseract();
using OcrInput input = new OcrInput();
var pageindices = new int[] { 1, 2 };
input.LoadImageFrames(@"img\Potter.tiff", pageindices);

// fixes digital noise and poor scanning
input.DeNoise();

// fixes rotation and perspective
input.Deskew();

OcrResult result = ocr.Read(input);
Console.WriteLine(result.Text);
Imports IronOcr

Private ocr As New IronTesseract()
Private OcrInput As using
Private pageindices = New Integer() { 1, 2 }
input.LoadImageFrames("img\Potter.tiff", pageindices)

' fixes digital noise and poor scanning
input.DeNoise()

' fixes rotation and perspective
input.Deskew()

Dim result As OcrResult = ocr.Read(input)
Console.WriteLine(result.Text)
$vbLabelText   $csharpLabel

OCR-Ergebnisse als durchsuchbare PDF-Datei exportieren

:path=/static-assets/ocr/content-code-examples/get-started/get-started-8.cs
using IronOcr;

IronTesseract ocr = new IronTesseract();
using OcrInput input = new OcrInput();
input.Title = "Quarterly Report";
input.LoadImage("image1.jpeg");
input.LoadImage("image2.png");
var pageindices = new int[] { 1, 2 };
input.LoadImageFrames("image3.gif", pageindices);

OcrResult result = ocr.Read(input);
result.SaveAsSearchablePdf("searchable.pdf");
Imports IronOcr

Private ocr As New IronTesseract()
Private OcrInput As using
input.Title = "Quarterly Report"
input.LoadImage("image1.jpeg")
input.LoadImage("image2.png")
Dim pageindices = New Integer() { 1, 2 }
input.LoadImageFrames("image3.gif", pageindices)

Dim result As OcrResult = ocr.Read(input)
result.SaveAsSearchablePdf("searchable.pdf")
$vbLabelText   $csharpLabel

TIFF in durchsuchbares PDF konvertieren

:path=/static-assets/ocr/content-code-examples/get-started/get-started-9.cs
using IronOcr;

IronTesseract ocr = new IronTesseract();
using OcrInput input = new OcrInput();
var pageindices = new int[] { 1, 2 };
input.LoadImageFrames("example.tiff", pageindices);
ocr.Read(input).SaveAsSearchablePdf("searchable.pdf");
Imports IronOcr

Private ocr As New IronTesseract()
Private OcrInput As using
Private pageindices = New Integer() { 1, 2 }
input.LoadImageFrames("example.tiff", pageindices)
ocr.Read(input).SaveAsSearchablePdf("searchable.pdf")
$vbLabelText   $csharpLabel

OCR-Ergebnisse als HTML exportieren

:path=/static-assets/ocr/content-code-examples/get-started/get-started-10.cs
using IronOcr;

IronTesseract ocr = new IronTesseract();
using OcrInput input = new OcrInput();
input.Title = "Html Title";
input.LoadImage("image1.jpeg");

OcrResult Result = ocr.Read(input);
Result.SaveAsHocrFile("results.html");
Imports IronOcr

Private ocr As New IronTesseract()
Private OcrInput As using
input.Title = "Html Title"
input.LoadImage("image1.jpeg")

Dim Result As OcrResult = ocr.Read(input)
Result.SaveAsHocrFile("results.html")
$vbLabelText   $csharpLabel

OCR-Filter zur Bildverbesserung

IronOCR bietet einzigartige Filter für OcrInput-Objekte zur Verbesserung der OCR-Leistung.

Bildverbesserungscode-Beispiel

:path=/static-assets/ocr/content-code-examples/get-started/get-started-11.cs
using IronOcr;

IronTesseract ocr = new IronTesseract();
using OcrInput input = new OcrInput();
input.LoadImage("LowQuality.jpeg");

// fixes digital noise and poor scanning
input.DeNoise();

// fixes rotation and perspective
input.Deskew();

OcrResult result = ocr.Read(input);
Console.WriteLine(result.Text);
Imports IronOcr

Private ocr As New IronTesseract()
Private OcrInput As using
input.LoadImage("LowQuality.jpeg")

' fixes digital noise and poor scanning
input.DeNoise()

' fixes rotation and perspective
input.Deskew()

Dim result As OcrResult = ocr.Read(input)
Console.WriteLine(result.Text)
$vbLabelText   $csharpLabel

Liste von OCR-Bildfiltern

Zu den in IronOCR eingebauten Eingabefiltern zur Verbesserung der OCR-Leistung gehören:

  • OcrInput.Rotate(double degrees) - Dreht Bilder um eine bestimmte Gradzahl im Uhrzeigersinn. Für eine Drehung gegen den Uhrzeigersinn verwenden Sie negative Zahlen.
  • OcrInput.Binarize() - Dieser Filter wandelt jedes Pixel entweder in Schwarz oder Weiß um, ohne einen Mittelweg zu finden, was die OCR-Leistung bei sehr kontrastarmen Bildern verbessern kann.
  • OcrInput.ToGrayScale() - Konvertiert jedes Pixel in einen Graustufenwert. Sie kann die Genauigkeit nicht verbessern, aber die Geschwindigkeit erhöhen.
  • OcrInput.Contrast() - Erhöht automatisch den Kontrast, was oft die Geschwindigkeit und Genauigkeit bei Scans mit geringem Kontrast verbessert.
  • OcrInput.DeNoise() - Entfernt digitales Rauschen, nur empfohlen, wenn Rauschen zu erwarten ist.
  • OcrInput.Invert() - Invertiert jede Farbe (weiß wird schwarz und umgekehrt).
  • OcrInput.Dilate() - Verbessert die Morphologie, fügt Pixel zu den Objektgrenzen hinzu, das Gegenteil von Erode.
  • OcrInput.Erode() - Fördert die Morphologie, entfernt Pixel von Objektgrenzen, das Gegenteil von Dilate.
  • OcrInput.Deskew() - Dreht ein Bild, um es richtig auszurichten. Nützlich, weil Tesseracts Schräglagentoleranz begrenzt ist.
  • OcrInput.EnhanceResolution - Verbessert die Auflösung von Bildern geringer Qualität. Diese Einstellung wird im Allgemeinen verwendet, um Eingaben mit niedriger DPI automatisch zu verwalten.
  • EnhanceResolution erkennt Bilder mit niedriger Auflösung (unter 275 dpi), skaliert sie hoch und schärft den Text für bessere OCR-Ergebnisse. Die Übersetzung ist zwar zeitaufwändig, verkürzt aber oft die gesamte OCR-Arbeitszeit.
  • Sprache - Unterstützt die Auswahl aus 22 internationalen Sprachpaketen.
  • Strategie - Ermöglicht die Auswahl zwischen schnellen und weniger genauen oder fortgeschrittenen (mit KI für die Genauigkeit) Strategien auf der Grundlage der statistischen Beziehung von Wörtern.
  • Farbraum - Wählen Sie, ob die OCR in Graustufen oder Farbe erfolgen soll; graustufen sind im Allgemeinen optimal, obwohl Farbe in bestimmten Kontrastsituationen besser sein kann.
  • DetectWhiteTextOnDarkBackgrounds - Passt sich an negative Bilder an, erkennt und liest automatisch weißen Text auf dunklem Hintergrund.
  • InputImageType - Steuert die OCR-Bibliothek und gibt an, ob sie an einem vollständigen Dokument oder einem Ausschnitt arbeitet.
  • RotateAndStraighten - Ermöglicht IronOCR den korrekten Umgang mit Dokumenten, die gedreht oder von perspektivischen Verzerrungen betroffen sind.
  • ReadBarcodes - Liest BarCodes und QR-Codes automatisch und gleichzeitig mit dem Scannen von Text, ohne nennenswerten zusätzlichen Zeitaufwand.
  • ColorDepth - Bestimmt die Bits pro Pixel für die Farbtiefe im OCR-Prozess. Eine größere Tiefe kann die Qualität, aber auch die Bearbeitungszeit erhöhen.

125 Sprachpakete

IronOCR supports 125 international languages via language packs which are distributed as DLLs, available for download from this website, or from the NuGet Package Manager.

Zu den Sprachen gehören u. a. Deutsch, Französisch, Englisch, Chinesisch und Japanisch. Es gibt spezielle Sprachpakete für MRZ, MICR-Schecks, Finanzdaten, Nummernschilder usw. Außerdem können benutzerdefinierte tesseract ".traineddata"-Dateien verwendet werden.

Sprachbeispiel

// Reference to the path of the source file that demonstrates setting language packs for OCR
:path=/static-assets/ocr/content-code-examples/get-started/get-started-12.cs
// Reference to the path of the source file that demonstrates setting language packs for OCR
using IronOcr;

// PM> Install IronOcr.Languages.Arabic
IronTesseract ocr = new IronTesseract();
ocr.Language = OcrLanguage.Arabic;

using OcrInput input = new OcrInput();

var pageindices = new int[] { 1, 2 };
input.LoadImageFrames("img/arabic.gif", pageindices);
// Add image filters if needed
// In this case, even thought input is very low quality
// IronTesseract can read what conventional Tesseract cannot.
OcrResult result = ocr.Read(input);
// Console can't print Arabic on Windows easily.
// Let's save to disk instead.
result.SaveAsTextFile("arabic.txt");
' Reference to the path of the source file that demonstrates setting language packs for OCR
Imports IronOcr

' PM> Install IronOcr.Languages.Arabic
Private ocr As New IronTesseract()
ocr.Language = OcrLanguage.Arabic

Using input As New OcrInput()
	
	Dim pageindices = New Integer() { 1, 2 }
	input.LoadImageFrames("img/arabic.gif", pageindices)
	' Add image filters if needed
	' In this case, even thought input is very low quality
	' IronTesseract can read what conventional Tesseract cannot.
	Dim result As OcrResult = ocr.Read(input)
	' Console can't print Arabic on Windows easily.
	' Let's save to disk instead.
	result.SaveAsTextFile("arabic.txt")
End Using
$vbLabelText   $csharpLabel

Beispiel für mehrere Sprachen

Es ist auch möglich, OCR in mehreren Sprachen gleichzeitig durchzuführen. Dies kann die OCR von englischen Metadaten und URLs in Unicode-Dokumenten verbessern.

// Reference to the path of the source file that demonstrates multi-language OCR
:path=/static-assets/ocr/content-code-examples/get-started/get-started-13.cs
// Reference to the path of the source file that demonstrates multi-language OCR
using IronOcr;

// PM> Install IronOcr.Languages.ChineseSimplified
IronTesseract ocr = new IronTesseract();
ocr.Language = OcrLanguage.ChineseSimplified;

// We can add any number of languages
ocr.AddSecondaryLanguage(OcrLanguage.English);

using OcrInput input = new OcrInput();
input.LoadPdf("multi-language.pdf");
OcrResult result = ocr.Read(input);
result.SaveAsTextFile("results.txt");
' Reference to the path of the source file that demonstrates multi-language OCR
Imports IronOcr

' PM> Install IronOcr.Languages.ChineseSimplified
Private ocr As New IronTesseract()
ocr.Language = OcrLanguage.ChineseSimplified

' We can add any number of languages
ocr.AddSecondaryLanguage(OcrLanguage.English)

Using input As New OcrInput()
	input.LoadPdf("multi-language.pdf")
	Dim result As OcrResult = ocr.Read(input)
	result.SaveAsTextFile("results.txt")
End Using
$vbLabelText   $csharpLabel

Detaillierte OCR-Ergebnisobjekte

IronOCR gibt für jeden Vorgang ein OCR-Ergebnisobjekt zurück. Im Allgemeinen greifen Entwickler auf die Eigenschaft Text zu, um gescannten Text zu erhalten. Das Ergebnisobjekt enthält jedoch viel detailliertere Informationen.

// Reference to the path of the source file demonstrating detailed OCR result object usage
:path=/static-assets/ocr/content-code-examples/get-started/get-started-14.cs
// Reference to the path of the source file demonstrating detailed OCR result object usage
using IronOcr;

IronTesseract ocr = new IronTesseract();

// Must be set to true to read barcode
ocr.Configuration.ReadBarCodes = true;
using OcrInput input = new OcrInput();
var pageindices = new int[] { 1, 2 };
input.LoadImageFrames(@"img\sample.tiff", pageindices);

OcrResult result = ocr.Read(input);
var pages = result.Pages;
var words = pages[0].Words;
var barcodes = result.Barcodes;
// Explore here to find a massive, detailed API:
// - Pages, Blocks, Paraphaphs, Lines, Words, Chars
// - Image Export, Fonts Coordinates, Statistical Data, Tables
' Reference to the path of the source file demonstrating detailed OCR result object usage
Imports IronOcr

Private ocr As New IronTesseract()

' Must be set to true to read barcode
ocr.Configuration.ReadBarCodes = True
Using input As New OcrInput()
	Dim pageindices = New Integer() { 1, 2 }
	input.LoadImageFrames("img\sample.tiff", pageindices)
	
	Dim result As OcrResult = ocr.Read(input)
	Dim pages = result.Pages
	Dim words = pages(0).Words
	Dim barcodes = result.Barcodes
	' Explore here to find a massive, detailed API:
	' - Pages, Blocks, Paraphaphs, Lines, Words, Chars
	' - Image Export, Fonts Coordinates, Statistical Data, Tables
End Using
$vbLabelText   $csharpLabel

Leistung

IronOCR ist sofort einsatzbereit und erfordert keine Leistungsanpassung oder Image-Modifikation.

Rasante Geschwindigkeit: IronOcr.2020+ ist bis zu 10 Mal schneller und macht über 250 % weniger Fehler als frühere Versionen.

Mehr erfahren

Wenn Sie mehr über OCR in C#, VB, F# oder einer anderen .NET-Sprache erfahren möchten, lesen Sie bitte unsere Community-Tutorials, die praktische Beispiele für die Verwendung von IronOCR und die Feinheiten der Optimierung der Bibliothek enthalten.

Eine vollständige API-Referenz für .NET-Entwickler ist ebenfalls verfügbar.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen
Rezensiert von
Jeff Fritz
Jeffrey T. Fritz
Principal Program Manager - .NET Community Team
Jeff ist außerdem Principal Program Manager für das .NET- und Visual Studio-Team. Er ist der ausführende Produzent der .NET Conf Virtual Conference Series und moderiert ‚Fritz and Friends‘, einen Livestream für Entwickler, der zweimal wöchentlich ausgestrahlt wird. Dort spricht er über Technik und schreibt gemeinsam mit den Zuschauern Code. Jeff schreibt Workshops, Präsentationen und plant Inhalte für die größten Microsoft-Entwicklerveranstaltungen, einschließlich Microsoft Build, Microsoft Ignite, .NET Conf und dem Microsoft MVP Summit.
Bereit anzufangen?
Nuget Downloads 5,044,537 | Version: 2025.11 gerade veröffentlicht