Test in einer Live-Umgebung
Test in der Produktion ohne Wasserzeichen.
Funktioniert überall, wo Sie es brauchen.
Dieses Tutorial soll Anfängern bei der Erstellung eines OCR-Bon-Scanner unter Verwendung der IronOCReine OCR-API in C#. Am Ende dieses Leitfadens werden Sie wissen, wie man optische Zeichenerkennung implementiert (OCR) zur Konvertierung verschiedener Arten von Quittungsdateien in bearbeitbare und durchsuchbare Daten unter Verwendung der OCR-API für Quittungen. Diese Technologie kann für Unternehmen, die ihr Ausgabenmanagement automatisieren und die manuelle Dateneingabe minimieren wollen, einen entscheidenden Unterschied machen. Fangen wir an!
Installieren Sie die OCR-Bibliothek mit NuGet Package Manager3. Laden Sie den Beleg mit der Methode OcrInput in das Programm
Bevor wir mit der Codierung beginnen, sollten Sie Folgendes sicherstellen:
Visual Studio: Dies wird unsere integrierte Entwicklungsumgebung sein (IDE), wo wir unseren C#-Code schreiben und ausführen werden.
IronOCR-Bibliothek: Wir werden IronOCR verwenden, eine fortschrittliche OCR-Bibliothek, die leicht in C#-Anwendungen integriert werden kann.
Öffnen Sie Visual Studio: Suchen Sie das Visual Studio-Symbol auf Ihrem Desktop oder in Ihrem Anwendungsmenü und doppelklicken Sie darauf, um das Programm zu öffnen.
Ein neues Projekt erstellen: Sobald Visual Studio geöffnet ist, finden Sie ein Startfenster. Klicken Sie auf die Schaltfläche "Ein neues Projekt erstellen". Wenn Sie Visual Studio bereits geöffnet haben und das Startfenster nicht angezeigt wird, können Sie es aufrufen, indem Sie im oberen Menü auf Datei > Neu > Projekt klicken.
Projekttyp auswählen: Im Fenster "Neues Projekt erstellen" sehen Sie eine Reihe von Projektvorlagen. Geben Sie in das Suchfeld "Console App" ein, um die Optionen zu filtern, und wählen Sie dann Console App (.NET Core) oder Konsolen-App (.NET-Framework)je nach Ihren Vorlieben und Ihrer Kompatibilität. Klicken Sie dann auf die Schaltfläche Next.
Konfigurieren Sie Ihr neues Projekt: Nun erscheint ein Bildschirm mit der Überschrift "Konfigurieren Sie Ihr neues Projekt".
Klicken Sie nach dem Ausfüllen dieser Angaben auf die Schaltfläche Weiter.
Zusätzliche Informationen: Möglicherweise werden Sie aufgefordert, das Ziel-.NET-Framework auszuwählen. Wählen Sie die aktuellste Version (es sei denn, Sie haben besondere Kompatibilitätsanforderungen) und klicken Sie auf Erstellen.
Bevor wir die IronOCR-Bibliothek verwenden können, müssen wir sie in unser Projekt aufnehmen. Folgen Sie diesen Schritten:
Klicken Sie mit der rechten Maustaste auf Ihr Projekt im Projektmappen-Explorer.
Wählen Sie "NuGet-Pakete verwalten".
Im Fenster des NuGet-Paketmanagers sehen Sie mehrere Registerkarten wie Durchsuchen, Installiert, Aktualisieren und Konsolidieren. Klicken Sie auf die Registerkarte Durchsuchen.
Geben Sie in das Suchfeld IronOcr ein. Dies ist der Name der Bibliothek, die wir zu unserem Projekt hinzufügen möchten. Drücken Sie zum Suchen die Eingabetaste.
In den Suchergebnissen wird das IronOCR-Bibliothekspaket angezeigt. Es sollte eines der ersten Ergebnisse sein, das Sie sehen. Klicken Sie sie an, um sie auszuwählen.
Nachdem Sie das IronOCR-Paket ausgewählt haben, sehen Sie auf der rechten Seite ein Fenster, das Informationen über das Paket anzeigt, einschließlich seiner Beschreibung und Version. In diesem Bereich gibt es auch eine Schaltfläche Installieren.
Nach der Installation von IronOCR müssen Sie als nächstes Ihr Projekt konfigurieren. So geht's:
Namespaces hinzufügen: Fügen Sie am Anfang der Datei Program.cs die folgenden Namespaces hinzu:
using IronOcr;
using System;
using IronOcr;
using System;
Imports IronOcr
Imports System
Konfigurationseinstellungen: Wenn Sie Konfigurationseinstellungen wie einen API-Schlüssel oder einen Lizenzschlüssel haben, müssen Sie diese angeben. Für IronOCR müssen Sie den Lizenzschlüssel wie im mitgelieferten Code angegeben festlegen:
License.LicenseKey = "License-Key"; // replace 'License-Key' with your key
License.LicenseKey = "License-Key"; // replace 'License-Key' with your key
License.LicenseKey = "License-Key" ' replace 'License-Key' with your key
Schreiben wir nun den Code zum Lesen der Quittung.
Definieren Sie den Pfad zu Ihrer Quittung: Geben Sie den Pfad zu der Quittungsdatei an, die Sie scannen möchten.
string pdfFilePath = "Sample_Receipt.jpg";
string pdfFilePath = "Sample_Receipt.jpg";
Dim pdfFilePath As String = "Sample_Receipt.jpg"
Try-Catch-Block: Implementieren Sie die Fehlerbehandlung mit einem try-catch-Block. Dies hilft Ihnen bei der Verwaltung von Ausnahmen, die während des OCR-Prozesses auftreten.
try
{
// OCR code will go here
}
catch (Exception ex)
{
// Handle exceptions here
Console.WriteLine($"An error occurred: {ex.Message}");
}
try
{
// OCR code will go here
}
catch (Exception ex)
{
// Handle exceptions here
Console.WriteLine($"An error occurred: {ex.Message}");
}
Try
' OCR code will go here
Catch ex As Exception
' Handle exceptions here
Console.WriteLine($"An error occurred: {ex.Message}")
End Try
In Schritt 5 befassen wir uns mit der Kernfunktionalität unserer Anwendung: der Implementierung von OCR zum Lesen und Interpretieren der Daten von unserem Beleg. Dazu gehören die Initialisierung der OCR-Engine, die Konfiguration der Eingabe, die Durchführung des OCR-Vorgangs und die Anzeige der Ergebnisse.
Der erste Teil des Codes erzeugt eine Instanz der Klasse IronTesseract:
var ocr = new IronTesseract();
var ocr = new IronTesseract();
Dim ocr = New IronTesseract()
Indem wir eine Instanz von IronTesseract erstellen, richten wir im Wesentlichen unser OCR-Tool ein und bereiten es auf die Durchführung der Texterkennungsaufgaben vor. Das ist so, als würde man den Motor eines Autos starten, bevor man es fahren kann. Dieses Objekt wird zur Steuerung des OCR-Prozesses verwendet, einschließlich des Lesens der Eingabe und des Extrahierens von Text aus der Eingabe.
Als Nächstes definieren wir den Input für unser OCR-Verfahren:
using (var input = new OcrInput(pdfFilePath))
{
// OCR processing will go here
}
using (var input = new OcrInput(pdfFilePath))
{
// OCR processing will go here
}
Using input = New OcrInput(pdfFilePath)
' OCR processing will go here
End Using
In diesem Segment wird OcrInput verwendet, um die zu verarbeitende Datei anzugeben. pdfFilePath ist eine Variable, die den Pfad zu unserer Belegdatei enthält. Indem wir diese Variable an OcrInput übergeben, teilen wir der OCR-Engine mit: "Hier ist die Datei, die du lesen sollst." Die using-Anweisung ist ein spezielles C#-Konstrukt, das sicherstellt, dass die von OcrInput verwendeten Ressourcen (wie Dateigriffe) ordnungsgemäß freigegeben werden, sobald die Verarbeitung abgeschlossen ist. So können Sie Ressourcen effizient verwalten und sicherstellen, dass Ihre Anwendung reibungslos und ohne unnötigen Speicherverbrauch läuft.
Innerhalb des Benutzungs-Blocks rufen wir die Methode Lesen auf unserer ocr-Instanz auf:
var result = ocr.Read(input);
var result = ocr.Read(input);
Dim result = ocr.Read(input)
Die Methode Read erhält den Pfad der Eingabedatei als Parameter. Mit dieser Zeile wird das Scannen des Bons gestartet. Es führt die OCR der angegebenen Eingabedatei durch, extrahiert Daten und speichert sie in einer Ergebnisvariablen. Wir können den extrahierten Text aus dieser Methode verwenden, um eine beliebige Textoperation durchzuführen.
Schließlich geben wir den Text aus, der durch den OCR-Prozess erkannt wurde:
Console.WriteLine(result.Text);
Console.WriteLine(result.Text);
Console.WriteLine(result.Text)
Die Variable result enthält die Ausgabe des OCR-Prozesses und result.Text enthält den tatsächlichen Text, der aus dem Beleg extrahiert wurde. Die Funktion Console.WriteLine übernimmt dann diesen Text und zeigt ihn auf der Konsole an. So können Sie die Ergebnisse des OCR-Prozesses sehen und überprüfen. Hier ist der vollständige Code der Datei Program.cs:
using IronOcr;
using Microsoft.Extensions.Configuration;
using System;
class Program
{
static void Main(string [] args)
{
License.LicenseKey = "Your-License-Key";
string pdfFilePath = "Sample_Receipt.jpg";
try
{
var ocr = new IronTesseract();
using (var input = new OcrInput(pdfFilePath))
{
var result = ocr.Read(input);
Console.WriteLine(result.Text);
}
}
catch (Exception ex)
{
// Handle exceptions (e.g., file not found, OCR errors) and log them if necessary.
Console.WriteLine($"An error occurred: {ex.Message}");
}
}
}
using IronOcr;
using Microsoft.Extensions.Configuration;
using System;
class Program
{
static void Main(string [] args)
{
License.LicenseKey = "Your-License-Key";
string pdfFilePath = "Sample_Receipt.jpg";
try
{
var ocr = new IronTesseract();
using (var input = new OcrInput(pdfFilePath))
{
var result = ocr.Read(input);
Console.WriteLine(result.Text);
}
}
catch (Exception ex)
{
// Handle exceptions (e.g., file not found, OCR errors) and log them if necessary.
Console.WriteLine($"An error occurred: {ex.Message}");
}
}
}
Imports IronOcr
Imports Microsoft.Extensions.Configuration
Imports System
Friend Class Program
Shared Sub Main(ByVal args() As String)
License.LicenseKey = "Your-License-Key"
Dim pdfFilePath As String = "Sample_Receipt.jpg"
Try
Dim ocr = New IronTesseract()
Using input = New OcrInput(pdfFilePath)
Dim result = ocr.Read(input)
Console.WriteLine(result.Text)
End Using
Catch ex As Exception
' Handle exceptions (e.g., file not found, OCR errors) and log them if necessary.
Console.WriteLine($"An error occurred: {ex.Message}")
End Try
End Sub
End Class
Erstellen Sie das Projekt: Klicken Sie auf das Menü "Build" und wählen Sie dann "Build Solution".
Starten Sie das Projekt: Drücken Sie F5 oder klicken Sie auf die Schaltfläche "Start", um Ihre Anwendung auszuführen.
Jetzt sehen Sie den Text Ihrer Quittung in der Konsole. Dieser Text stellt die Daten dar, die aus dem Bild Ihrer Quittung extrahiert wurden. So scannen wir mit IronOCR die Belege. Dies ist ein einfaches Beispiel für die Verwendung von OCR-Funktionen zur Extraktion von Daten aus Papierquittungen. Es ist eine sehr generische Implementierung. Sie können Ihren Code so ändern, dass er dem Layout Ihrer Quittungsbilder entspricht.
Danach können Sie die unstrukturierten Daten von Quittungen verwenden, die wir nach dem Scannen von Quittungen erhalten haben. Wir können wichtige Informationen aus einem bestimmten Abschnitt des Belegs abrufen. Oder wir können die Quittungsdaten in einer übersichtlicheren Form anzeigen. Mit IronOCR können wir eine OCR-Software zum Scannen von Quittungen entwickeln. Das wird uns helfen, genaue Daten der Empfangsfelder zu extrahieren.
Herzlichen Glückwunsch! Sie haben erfolgreich einen OCR-Quittungsscanner mit C# und IronOCR erstellt. Dieser Scanner kann die Genauigkeit der Datenextraktion für verschiedene Geschäftsanforderungen wie z. B. Ausgabenverfolgung, Lieferkettenmanagement usw. erheblich verbessern. Es ist nicht mehr nötig, die gescannten Belege zu überprüfen und Daten manuell zu extrahieren.
IronOCR bietet eine kostenlos testenund ermöglicht es den Anwendern, die Funktionen kostenlos zu testen und zu bewerten. Für diejenigen, die das gesamte Spektrum an Funktionen in ein professionelles Umfeld integrieren und nutzen möchten, gibt es Lizenzen ab $749, die eine umfassende Lösung für robustes OCR-Belegscannen und Datenextraktion bieten.
Denken Sie daran, dass dies erst der Anfang ist. Sie können diese Anwendung erweitern, um verschiedene Dateitypen zu unterstützen, den Datenschutz zu verbessern oder zusätzliche Funktionen zu integrieren, wie z. B. die Erkennung von Belegen für bestimmte Felder, wie z. B. den Steuerbetrag, das Datum, die Einzelposten und mehr. Mit der OCR-Technologie sind die Möglichkeiten enorm und ebnen den Weg für effizientere und intelligentere Geschäftsprozesse. Fröhliches Kodieren!
9 .NET API-Produkte für Ihre Bürodokumente