Zum Fußzeileninhalt springen
MIT ANDEREN KOMPONENTEN VERGLEICHEN

AWS OCR vs Azure OCR (Vergleich der OCR-Funktionen)

Das Patagames Tesseract .NET SDK bindet Nutzer an Windowsund verlangt eine kommerzielle Lizenz für eine Engine, die bereits kostenlos verfügbar ist – diese Kombination macht es 2026 schwer verkäuflich. Die kostenlosen Wrapper charlesw und tesseractocr bieten dieselbe Tesseract-Engine, denselben Workflow für die Tessdata-Verwaltung und dieselbe Vorverarbeitung – und das völlig kostenlos. Patagames fügt zwar kommerziellen Support und vorkompilierte native Binärdateien hinzu, verzichtet dabei aber auf Linux, macOS, Dockerund jegliche Cloud-Bereitstellungsplattformen. Wenn Sie bereits kommerzielle Preise für OCR zahlen, stellt sich die Frage, ob Sie tatsächlich Funktionen auf kommerziellem Niveau erhalten oder nur eine bequeme Binärdistribution von Software, die nichts kostet.

Patagames Tesseract .NET SDK verstehen

Patagames Tesseract.NET SDK (NuGet-Paket Tesseract.Net.SDK, Namespace Patagames.Ocr) ist ein kommerzieller .NET-Wrapper um Googles Open-Source-Tesseract-OCR-Engine, produziert von Patagames Software. Das Produkt positioniert sich über kostenlosen Community-Wrappern, indem es vorkompilierte native Tesseract-Binärdateien bündelt, kommerziellen Support bietet und eine vereinfachte API-Oberfläche über dem rohen Tesseract bereitstellt.

Der Wrapper stellt Tesseracts Kern-Erkennungsschleife über Klassen wie OcrApi und OcrBitmap zur Verfügung. Sie rufen OcrApi.Create() auf, initialisieren die Engine mit einem tessdata-Pfad und einem Sprach-String, laden ein Bitmap und rufen GetTextFromImage auf. Das ist im Wesentlichen die gesamte OCR-Oberfläche für die Bilderkennung.

Wichtigste architektonische Merkmale des Patagames Tesseract .NET SDK:

  • Nur für Windows: Das SDK enthält native Windows-Binärdateien. Linux-, macOS- und Docker-Bereitstellungen werden nicht unterstützt. Es gibt keine plattformübergreifende NuGet Laufzeitpaketaufteilung und keine Linux-spezifische native Binärdatei. Die zugrundeliegende Tesseract-Engine: Die gesamte Erkennungsgenauigkeit basiert auf der Open-Source-Engine Tesseract. Patagames fügt kein proprietäres Erkennungsmodell oder eine neuronale Netzwerkschicht hinzu.
  • Manuelle Verwaltung von tessdata: Der Aufruf von api.Init(tessDataPath, "eng") erfordert ein gültiges tessdata-Verzeichnis, das mit .traineddata-Dateien gefüllt ist. Das SDK verwaltet Sprachdaten nicht automatisch.
  • Keine Vorverarbeitungspipeline: Es gibt keine integrierten Entzerrungs-, Rauschunterdrückungs-, Kontrast- oder Binarisierungsoperationen. Die Verbesserung der Bildqualität liegt vollständig in Ihrer Verantwortung, bevor Sie ein Bild an die API übergeben.
  • Kein nativer PDF-Support: PDF-Dokumente erfordern zunächst eine externe Umwandlung in Bilder. Das SDK akzeptiert System.Drawing.Bitmap-Objekte, nicht PDF-Dateipfade.
  • Kommerzielle Preisgestaltung ohne öffentliche Preise: Lizenzstufen (Einzelentwickler, Team, Enterprise) erfordern eine Vertriebsanfrage. Es wird keine Preisliste veröffentlicht.
  • System.Drawing Abhängigkeit: Die API arbeitet mit System.Drawing.Bitmap, was den Code an die Windows-Zeichnungs-Infrastruktur bindet und zusätzliche Reibung bei nicht-Windows-Zielen verursacht, selbst wenn die zugrunde liegenden Binärdateien verfügbar wären.

Grundlegende OCR mit Patagames

Die Patagames-API initialisiert eine OcrApi-Instanz pro Operation, gibt einen tessdata-Ordnerpfad explizit an und akzeptiert ein System.Drawing.Bitmap:

// NuGet: Install-Package Tesseract.Net.SDK
using Patagames.Ocr;
using Patagames.Ocr.Enums;
using System.Drawing;

public class PatagamesOcrService
{
    private const string TessDataPath = @"./tessdata"; // must exist and be populated

    public string ExtractText(string imagePath)
    {
        using var api = OcrApi.Create();
        api.Init(TessDataPath, "eng"); // tessdata path — breaks on deployment if path is wrong

        using var bitmap = new Bitmap(imagePath);
        return api.GetTextFromImage(bitmap);
    }

    public string MultiLanguageOcr(string imagePath)
    {
        using var api = OcrApi.Create();
        api.Init(TessDataPath, "eng+fra+deu"); // language string must match tessdata files present

        using var bitmap = new Bitmap(imagePath);
        return api.GetTextFromImage(bitmap);
    }

    public string OcrWithSegmentation(string imagePath, PageSegmentationMode mode)
    {
        using var api = OcrApi.Create();
        api.Init(TessDataPath, "eng");
        api.SetVariable("tessedit_pageseg_mode", ((int)mode).ToString()); // raw Tesseract variable

        using var bitmap = new Bitmap(imagePath);
        return api.GetTextFromImage(bitmap);
    }
}
// NuGet: Install-Package Tesseract.Net.SDK
using Patagames.Ocr;
using Patagames.Ocr.Enums;
using System.Drawing;

public class PatagamesOcrService
{
    private const string TessDataPath = @"./tessdata"; // must exist and be populated

    public string ExtractText(string imagePath)
    {
        using var api = OcrApi.Create();
        api.Init(TessDataPath, "eng"); // tessdata path — breaks on deployment if path is wrong

        using var bitmap = new Bitmap(imagePath);
        return api.GetTextFromImage(bitmap);
    }

    public string MultiLanguageOcr(string imagePath)
    {
        using var api = OcrApi.Create();
        api.Init(TessDataPath, "eng+fra+deu"); // language string must match tessdata files present

        using var bitmap = new Bitmap(imagePath);
        return api.GetTextFromImage(bitmap);
    }

    public string OcrWithSegmentation(string imagePath, PageSegmentationMode mode)
    {
        using var api = OcrApi.Create();
        api.Init(TessDataPath, "eng");
        api.SetVariable("tessedit_pageseg_mode", ((int)mode).ToString()); // raw Tesseract variable

        using var bitmap = new Bitmap(imagePath);
        return api.GetTextFromImage(bitmap);
    }
}
Imports Patagames.Ocr
Imports Patagames.Ocr.Enums
Imports System.Drawing

Public Class PatagamesOcrService
    Private Const TessDataPath As String = "./tessdata" ' must exist and be populated

    Public Function ExtractText(imagePath As String) As String
        Using api = OcrApi.Create()
            api.Init(TessDataPath, "eng") ' tessdata path — breaks on deployment if path is wrong

            Using bitmap = New Bitmap(imagePath)
                Return api.GetTextFromImage(bitmap)
            End Using
        End Using
    End Function

    Public Function MultiLanguageOcr(imagePath As String) As String
        Using api = OcrApi.Create()
            api.Init(TessDataPath, "eng+fra+deu") ' language string must match tessdata files present

            Using bitmap = New Bitmap(imagePath)
                Return api.GetTextFromImage(bitmap)
            End Using
        End Using
    End Function

    Public Function OcrWithSegmentation(imagePath As String, mode As PageSegmentationMode) As String
        Using api = OcrApi.Create()
            api.Init(TessDataPath, "eng")
            api.SetVariable("tessedit_pageseg_mode", CInt(mode).ToString()) ' raw Tesseract variable

            Using bitmap = New Bitmap(imagePath)
                Return api.GetTextFromImage(bitmap)
            End Using
        End Using
    End Function
End Class
$vbLabelText   $csharpLabel

Der Pfad zur Tessdata-Datei ist das erste Problem, auf das die Bereitstellungsteams stoßen. Auf einem Entwicklerrechner funktioniert es. In einem Docker-Container oder einem LinuxCI-Runner schlägt der Pfad entweder fehl oder die Laufzeitumgebung existiert überhaupt nicht. Auf macOSlässt sich die native Windows-Binärdatei einfach nicht laden. Der Segmentierungsmodus wird durch Schreiben einer rohen Tesseract-Variablenzeichenkette festgelegt – es gibt keine stark typisierte Enumeration, die diesen Aufruf umschließt. Hier zeigen sich die Schwächen, durch die trotz der kommerziellen Verpackung der ursprüngliche Charakter von Tesseract durchscheint.

IronOCR verstehen

IronOCR ist eine kommerzielle .NET OCR-Bibliothek, die auf einer optimierten Tesseract 5-Engine basiert und über eine vollständige Vorverarbeitungspipeline, native PDF-Unterstützung sowie integrierte plattformübergreifende Bereitstellung verfügt. Das Designziel besteht darin, jeden manuellen Schritt zwischen der Installation eines NuGet Pakets und dem Erhalt des korrekten Textes aus einem Dokument zu eliminieren.

Wichtige Merkmale von IronOCR:

  • Plattformübergreifend von Anfang an: Windowsx64/x86, Linuxx64, macOS, Docker, Azure App-Dienstund AWS Lambdawerden alle über ein einziges NuGet Paket unterstützt. Keine separate Binärverteilung, keine Plattformbedingungen.
  • Automatische Vorverarbeitung: Entzerren, Rauschen entfernen, Kontrastverstärkung, Binarisierung und Auflösungsnormalisierung werden automatisch durchgeführt. Explizite Kontrolle ist bei Bedarf über OcrInput-Filtermethoden verfügbar.
  • Nativer PDF-Input: Übergeben Sie direkt einen PDF-Dateipfad an IronTesseract.Read(). Kein externer Renderer, keine Zwischenbildkonvertierung, keine Abhängigkeit von externen Bibliotheken.
  • Durchsuchbarer PDF-Output: result.SaveAsSearchablePdf() erzeugt ein PDF/A-konformes Dokument mit einer unsichtbaren Textebene über dem Originalbild, verwendbar in einem Anruf.
  • Tessdata ist unsichtbar: Sprachdaten werden als NuGet-Pakete geliefert (IronOcr.Languages.French, etc.). Es gibt kein Tessdata-Verzeichnis, das konfiguriert werden muss, keinen Dateipfad, der in verschiedenen Umgebungen falsch angegeben werden kann.
  • Strukturierte Ergebnisse: OcrResult zeigt .Pages, .Lines, .Words und .Paragraphs Sammlungen mit X/Y-Koordinaten und Vertrauenswerten pro Wort.
  • Öffentliche Preisgestaltung: $999 Lite / $1,499 Plus / $2,999 Professional / $5,999 Unlimited, alle unbefristeten Lizenzen mit einem Jahr Updates inklusive.

Funktionsvergleich

Feature Patagames Tesseract .NET SDK IronOCR
Plattformunterstützung Nur für Windows Windows, Linux, macOS, Docker
Preismodell Gewerblich (Angebot auf Anfrage) $5,999 unbefristet (öffentlich)
Motor Tesseract (Open Source) Optimierter Tesserakt 5
PDF-Eingabe Nicht unterstützt Native
Automatische Vorverarbeitung None Eingebaut
Tessdata-Management Manuell (Verzeichnispfad) NuGet-Pakete
Durchsuchbare PDF-Ausgabe Nicht unterstützt Eingebaut

Detaillierter Funktionsvergleich

Feature Patagames Tesseract .NET SDK IronOCR
Windows, Linux, macOS, Docker, Azure, AWS.
Windows Ja Ja
Linux Nein Ja
macOS Nein Ja
Docker Nein Ja
Azure App-Dienst Nein Ja
AWS Lambda Nein Ja
Preisgestaltung und Lizenzierung
Öffentliche Preisgestaltung Nein (Kontaktaufnahme erforderlich) Ja ($5,999)
Unbefristete Lizenz Unbekannt Ja
Kosten pro Transaktion None None
Kostenloses Tarif Nein Testversion verfügbar
OCR-Engine und Genauigkeit
zugrundeliegender Motor Tesseract (Open Source) Optimierter Tesserakt 5
Automatische Vorverarbeitung Nein Ja
Manuelle Vorverarbeitungssteuerung Über Tesseract-Variablen Ja (Entzerrung, Rauschunterdrückung, Kontrast, Binarisierung, Auflösungsverbesserung)
Eingabeunterstützung
JPEG / PNG / TIFF Ja (über System.Drawing.Bitmap) Ja
PDF-Eingabe (nativ) Nein Ja
Passwortgeschütztes PDF Nein Ja
Stream-Eingabe Nein Ja
URL-Eingabe Nein Ja
Ausgabekapazitäten
Klartext Ja Ja
Durchsuchbares PDF Nein Ja
hOCR-Export Nein Ja
Strukturierte Wort-/Zeilendaten Beschränkt Ja (Koordinaten + Konfidenzintervall)
Sprachunterstützung
Wortanzahl Tesseract tessdata Über 125 NuGet Pakete
Mehrsprachigkeit pro Dokument Ja (Zeichenkettenverkettung) Ja (stark typisierte Aufzählung)
Sprachverteilung Manuelle Tessdata-Dateien dotnet add package
Erweiterte Funktionen
Regionsbasierte OCR Nein Ja
Barcode-Lesung während der OCR Nein Ja
Konfidenzwerte pro Wort Nein Ja
Gewindesicherheit Standard-Tesseraktgrenzen Eingebaute Parallelisierung
Einsatz
Autarke Bereitstellung Nur für Windows Alle Plattformen
Docker-Container Nein Ja
CI/CD-Pipeline (Linux) Nein Ja

Plattformabdeckung: Nur Windowsvs. Plattformübergreifend

Dies ist der mit Abstand bedeutendste architektonische Unterschied zwischen den beiden Bibliotheken.

Patagames-Ansatz

Patagames liefert native Windows-Binärdateien für die Tesseract-Engine. Die Klasse OcrApi lädt eine Windows-DLL. Unter Linuxoder macOSgibt es nichts zu laden. Die Abhängigkeit von System.Drawing.Bitmap verschärft das Problem: System.Drawing auf .NET Core und .NET 5+ erfordert libgdiplus auf Linuxund wird auf macOSohne Mono nicht unterstützt, was seine eigene Komplexität hinzufügt.

Ein Team, das eine ASP.NET Core-Anwendung auf .NET 8 erstellt und in einem Linux-Container bereitstellt, stößt mit Patagames auf zwei separate Hindernisse: Das native Tesseract-Binär existiert nicht für diese Plattform und die Abhängigkeit von System.Drawing erfordert ein zusätzliches natives Paket, selbst wenn es vorhanden wäre. Die Anwendung startet einfach nicht. Es gibt keine Ausweichmöglichkeit und keinen Migrationspfad außer dem vollständigen Austausch der Bibliothek.

Überlegen Sie, was dies für ein typisches modernes .NET Unternehmen bedeutet. Die Entwicklung findet unter Windowsoder macOSstatt. CI läuft unter Linux. Production ist ein Docker-Container auf Kubernetes. Patagames scheitert bereits im zweiten Schritt dieses Prozesses.

// Patagames: Windowsruntime only
// This code path does not execute on Linuxor macOS
using var api = OcrApi.Create();
api.Init(@"./tessdata", "eng"); // WindowsDLL load — fails silently or throws on Linux

using var bitmap = new Bitmap(imagePath); // System.Drawing — requires libgdiplus on Linux
return api.GetTextFromImage(bitmap);
// Patagames: Windowsruntime only
// This code path does not execute on Linuxor macOS
using var api = OcrApi.Create();
api.Init(@"./tessdata", "eng"); // WindowsDLL load — fails silently or throws on Linux

using var bitmap = new Bitmap(imagePath); // System.Drawing — requires libgdiplus on Linux
return api.GetTextFromImage(bitmap);
Imports Patagames.Ocr

Using api = OcrApi.Create()
    api.Init("./tessdata", "eng") ' WindowsDLL load — fails silently or throws on Linux

    Using bitmap As New Bitmap(imagePath) ' System.Drawing — requires libgdiplus on Linux
        Return api.GetTextFromImage(bitmap)
    End Using
End Using
$vbLabelText   $csharpLabel

Der tessdata-Pfad erzeugt außerdem ein separates Bereitstellungsproblem. In einem Container muss das Verzeichnis tessdata explizit in das Image kopiert werden. Wenn der Pfad falsch ist, schlägt der Aufruf von Init zur Laufzeit fehl. Nichts in der Build-Pipeline fängt dies auf; Es taucht in der Produktion auf.

IronOCR-Ansatz

IronOCR veröffentlicht plattformspezifische Laufzeitpakete als Teil seines NuGet Abhängigkeitsgraphen. Durch Hinzufügen von IronOcr zu einem Projekt wird das richtige native Binär für Windowsx64, Windowsx86, Linuxx64 oder macOSautomatisch aufgelöst. Keine RuntimeIdentifier-Gymnastik, kein manuelles Kopieren von Binärdateien.

// IronOCR: same code on Windows, Linux, macOS, Docker
using IronOcr;

var text = new IronTesseract().Read("document.jpg").Text;
// IronOCR: same code on Windows, Linux, macOS, Docker
using IronOcr;

var text = new IronTesseract().Read("document.jpg").Text;
Imports IronOcr

Dim text As String = New IronTesseract().Read("document.jpg").Text
$vbLabelText   $csharpLabel

Eine Linux-Docker-Bereitstellung ist dokumentiert und wird standardmäßig unterstützt. Die genaue Dockerfile-Konfiguration finden Sie im IronOCR Docker-Bereitstellungsleitfaden . Die Linux-Bereitstellungsanleitung deckt sowohl Debian als auch Alpine ab. An keiner Stelle der Anwendung ist plattformspezifisches Code-Branching erforderlich.

Sprachdaten werden über NuGet bereitgestellt. dotnet add package IronOcr.Languages.French fügt das französische tessdata hinzu. Das Paket wird zur Build-Zeit aufgelöst, automatisch in den Ausgabepfad kopiert und steht in jeder Bereitstellungsumgebung ohne Pfadkonfiguration zur Verfügung. Erfahren Sie , wie IronOCR mehrere Sprachen im gesamten Workflow für das Sprachmanagement verarbeitet .

Handelspreis für einen kostenlosen Motor

Der zweite wichtige Aspekt ist wirtschaftlicher Natur. Patagames berechnet kommerzielle Preise für eine Software, die eine frei verfügbare Open-Source-Engine einbindet und keine proprietären Erkennungsfunktionen darüber hinaus bietet.

Was Patagames gegenüber kostenlosen Verpackungen bietet

Patagames wirbt mit vier Vorteilen gegenüber kostenlosen Tesseract-Wrappern: kommerzieller Support, eine vereinfachte API, vorkompilierte native Binärdateien und verwaltetes Tessdata-Handling. Jeder einzelne verdient eine eingehende Untersuchung.

Kommerzieller Support ist zwar verfügbar, aber schwer zu bepreisen. Sie bezahlen für einen Supportvertrag für Probleme, die auf Tesseract zurückzuführen sind, eine Open-Source-Engine eines Drittanbieters, über die Patagames keine Kontrolle hat. Falls Tesseract bei einem bestimmten Bildtyp eine fehlerhafte Ausgabe erzeugt, kann der Patagames-Support die Engine nicht verbessern.

Die vereinfachte API ist nur von geringer Bedeutung. OcrApi.Create() gefolgt von api.Init(path, "eng") ist etwas sauberer als die rohe Tesseract-Interop-Schicht in charlesw/tesseract, aber beide erfordern dennoch die gleiche manuelle Tessdata-Verwaltung und das gleiche Fehlen von Vorverarbeitung.

Vorkompilierte native Binärdateien sparen die ein bis zwei Stunden, die zum Kompilieren von Tesseract aus dem Quellcode unter Windowsbenötigt werden. Dies war im Jahr 2015 sinnvoll. Heute liefert das kostenlose tesseractocr NuGet-Paket (Tesseract auf NuGet.org) auch vorgefertigte native Binärdateien ohne Kosten.

Die Behauptung , dass die Verwaltung von Tessdata am stärksten von der tatsächlichen API untergraben wird, ist falsch. Der Aufruf von api.Init(TessDataPath, "eng") erfordert weiterhin einen Pfad-String. Sie füllen dieses Verzeichnis weiterhin. Die Verwaltung ist nur geringfügig übersichtlicher als das Verweisen einer Konfigurationsdatei auf einen Ordner.

Das Ergebnis: Patagames verlangt kommerzielle Preise für eine Komfortschicht, die auch kostenlose Alternativen bieten, behebt nicht die grundlegenden Vorverarbeitungs- und PDF-Lücken von Tesseract und entfernt die plattformübergreifende Unterstützung, die kostenlose Alternativen beibehalten.

Kommerzielle Rechtfertigung von IronOCR

Bei der Beurteilung, ob eine kommerzielle OCR-Bibliothek ihren Lizenzpreis rechtfertigt, stellt sich die Frage, welche Probleme die Bibliothek löst, die kostenlose Alternativen nicht lösen können. Die Preisgestaltung für IronOCR beginnt bei $999 für eine unbefristete Lite-Lizenz. Dieser Preis ermöglicht Funktionen, die Tesseract-Wrapper – ob kostenlos oder kommerziell – einfach nicht bieten.

// PDF OCR: Patagames has no PDF support at all
// Free wrappers have no PDF support at all
// IronOCR: one line
using IronOcr;

var text = new IronTesseract().Read("scanned-invoice.pdf").Text;
// PDF OCR: Patagames has no PDF support at all
// Free wrappers have no PDF support at all
// IronOCR: one line
using IronOcr;

var text = new IronTesseract().Read("scanned-invoice.pdf").Text;
Imports IronOcr

' PDF OCR: Patagames has no PDF support at all
' Free wrappers have no PDF support at all
' IronOCR: one line
Dim text As String = New IronTesseract().Read("scanned-invoice.pdf").Text
$vbLabelText   $csharpLabel

Für den PDF-OCR-Arbeitsablauf erfordert Patagames einen externen PDF-Renderer (PdfiumViewer, iText oder ähnlich), eine Schleife, um jede Seite in ein Bitmap zu rendern, das jedes Bitmap an GetTextFromImage übergibt und Ergebnisse zusammenführt. Das bedeutet 30-50 zusätzliche Codezeilen, eine zusätzliche NuGet Abhängigkeit und eine weitere Fehlerquelle.IronOCR erledigt das mit einem einzigen Aufruf.

// Durchsuchbares PDF output: not available in Patagames, not available in free wrappers
// IronOCR: two lines
var result = new IronTesseract().Read("scanned-document.pdf");
result.SaveAsSearchablePdf("searchable-output.pdf");
// Durchsuchbares PDF output: not available in Patagames, not available in free wrappers
// IronOCR: two lines
var result = new IronTesseract().Read("scanned-document.pdf");
result.SaveAsSearchablePdf("searchable-output.pdf");
' Durchsuchbares PDF output: not available in Patagames, not available in free wrappers
' IronOCR: two lines
Dim result = New IronTesseract().Read("scanned-document.pdf")
result.SaveAsSearchablePdf("searchable-output.pdf")
$vbLabelText   $csharpLabel

Die Möglichkeit , durchsuchbare PDFs auszugeben – also ein PDF mit einer unsichtbaren Textebene zu erzeugen, die das Originaldokument per Strg+F durchsuchbar macht – erfordert entweder IronOCR oder eine komplexe hOCR-zu-PDF-Pipeline mit externen Tools. Es gibt keinen Tesseract-Wrapper, weder kostenlos noch kommerziell, der dies mit einem einzigen Methodenaufruf ermöglicht.

Die Vorverarbeitung bestätigt das. Scans von geringer Qualität – gedreht, verrauscht, kontrastarm – liefern ohne Vorverarbeitung ein schlechtes Tesseract-Ergebnis. Patagames benötigt keine Vorverarbeitung. Den Vorverarbeitungscode schreiben Sie selbst mit System.Drawing, ImageSharp oder ähnlichen Programmen.

// IronOCR: built-in preprocessing pipeline for poor quality images
using IronOcr;

using var input = new OcrInput();
input.LoadImage("rotated-noisy-scan.jpg");
input.Deskew();          // correct rotation
input.DeNoise();         // remove scan noise
input.Contrast();        // improve contrast
input.Binarize();        // convert to black/white optimal for OCR
input.EnhanceResolution(300); // normalize DPI

var result = new IronTesseract().Read(input);
Console.WriteLine($"Confidence: {result.Confidence}%");
// IronOCR: built-in preprocessing pipeline for poor quality images
using IronOcr;

using var input = new OcrInput();
input.LoadImage("rotated-noisy-scan.jpg");
input.Deskew();          // correct rotation
input.DeNoise();         // remove scan noise
input.Contrast();        // improve contrast
input.Binarize();        // convert to black/white optimal for OCR
input.EnhanceResolution(300); // normalize DPI

var result = new IronTesseract().Read(input);
Console.WriteLine($"Confidence: {result.Confidence}%");
Imports IronOcr

Dim input As New OcrInput()
Using input
    input.LoadImage("rotated-noisy-scan.jpg")
    input.Deskew()          ' correct rotation
    input.DeNoise()         ' remove scan noise
    input.Contrast()        ' improve contrast
    input.Binarize()        ' convert to black/white optimal for OCR
    input.EnhanceResolution(300) ' normalize DPI

    Dim result = New IronTesseract().Read(input)
    Console.WriteLine($"Confidence: {result.Confidence}%")
End Using
$vbLabelText   $csharpLabel

Der Leitfaden zur Bildqualitätskorrektur behandelt die gesamte Palette der verfügbaren Filter und erklärt, wann welcher Filter anzuwenden ist. Für die farbspezifische Vorverarbeitung bietet der Leitfaden zur Bildfarbkorrektur zusätzliche Optionen. Nichts davon ist in Patagames verfügbar, unabhängig von der erworbenen Lizenzstufe.

Wertvoller als kostenlose Tesseract-Verpackungen

Der konkrete Vergleich bezieht sich hier auf Patagames (kommerziell) und den kostenlosen NuGet Wrapper tesseractocr – beide kapseln Tesseract, beide benötigen tessdata, beide haben keine Vorverarbeitung, beide haben keine PDF-Unterstützung. Die Frage ist, was Patagames hinzufügt, das den kommerziellen Preis gegenüber der kostenlosen Alternative rechtfertigt.

Patagames Ansatz zur Sprachkonfiguration

Patagames verwendet für die mehrsprachige OCR eine Pfadzeichenkette und eine Sprachverkettungszeichenkette:

// Patagames multi-language: manual tessdata, string concatenation
using Patagames.Ocr;

using var api = OcrApi.Create();
api.Init(@"./tessdata", "eng+fra+deu"); // tessdata folder must contain eng.traineddata, fra.traineddata, deu.traineddata

using var bitmap = new Bitmap(imagePath);
return api.GetTextFromImage(bitmap);
// Patagames multi-language: manual tessdata, string concatenation
using Patagames.Ocr;

using var api = OcrApi.Create();
api.Init(@"./tessdata", "eng+fra+deu"); // tessdata folder must contain eng.traineddata, fra.traineddata, deu.traineddata

using var bitmap = new Bitmap(imagePath);
return api.GetTextFromImage(bitmap);
Imports Patagames.Ocr

Using api = OcrApi.Create()
    api.Init("./tessdata", "eng+fra+deu") ' tessdata folder must contain eng.traineddata, fra.traineddata, deu.traineddata

    Using bitmap As New Bitmap(imagePath)
        Return api.GetTextFromImage(bitmap)
    End Using
End Using
$vbLabelText   $csharpLabel

Dies ist funktional identisch mit der Mehrsprachensyntax des kostenlosen charlesw/tesseract-Wrappers. Sie laden die Tessdata-Dateien weiterhin manuell herunter, kopieren sie in das richtige Verzeichnis und referenzieren sie über eine Codezeichenfolge. Die kommerzielle Lizenz sieht keine Automatisierung dieses Arbeitsablaufs vor.

IronOCR Ansatz zur Sprachkonfiguration

IronOCR verwaltet Sprachdaten als NuGet Pakete mit einer stark typisierten API:

//IronOCR multi-language: NuGet packages, strongly typed
// dotnet add package IronOcr.Languages.French
// dotnet add package IronOcr.Languages.German
using IronOcr;

var ocr = new IronTesseract();
ocr.Language = OcrLanguage.English;
ocr.AddSecondaryLanguage(OcrLanguage.French);
ocr.AddSecondaryLanguage(OcrLanguage.German);

var result = ocr.Read(imagePath);
//IronOCR multi-language: NuGet packages, strongly typed
// dotnet add package IronOcr.Languages.French
// dotnet add package IronOcr.Languages.German
using IronOcr;

var ocr = new IronTesseract();
ocr.Language = OcrLanguage.English;
ocr.AddSecondaryLanguage(OcrLanguage.French);
ocr.AddSecondaryLanguage(OcrLanguage.German);

var result = ocr.Read(imagePath);
Imports IronOcr

Dim ocr As New IronTesseract()
ocr.Language = OcrLanguage.English
ocr.AddSecondaryLanguage(OcrLanguage.French)
ocr.AddSecondaryLanguage(OcrLanguage.German)

Dim result = ocr.Read(imagePath)
$vbLabelText   $csharpLabel

Die Sprachverwaltung über NuGet bedeutet, dass die CI-Pipeline Sprachdaten auf die gleiche Weise auflöst wie jede andere Abhängigkeit. Es gibt kein tessdata-Verzeichnis, das in Docker-Images kopiert werden müsste, keinen Punkt auf der Bereitstellungs-Checkliste für "sicherstellen, dass tessdata vorhanden ist" und kein Tippfehlerrisiko durch manuelles Eintippen von Sprachcode-Zeichenketten. Die über 125 verfügbaren Sprachpakete werden alle auf die gleiche Weise installiert.

Der Unterschied zwischen Patagames und kostenlosen Wrappern ist gering – der kommerzielle Preis bietet in erster Linie den Komfort einer Windows-Binärdatei. Die Kluft zwischen Patagames und IronOCR ist groß – der kommerzielle Preis beinhaltet native PDF-Unterstützung, automatische Vorverarbeitung, durchsuchbare PDF-Ausgabe, plattformübergreifende Bereitstellung und strukturierte Ergebnisdaten.

API-Mapping-Referenz

Patagames Tesseract .NET SDK IronOCR-Äquivalent
Tesseract.Net.SDK (NuGet) IronOcr (NuGet)
Patagames.Ocr (Namespace) IronOcr (Namespace)
OcrApi.Create() new IronTesseract()
api.Init(tessDataPath, "eng") ocr.Language = OcrLanguage.English (kein Pfad erforderlich)
api.Init(path, "eng+fra") ocr.AddSecondaryLanguage(OcrLanguage.French)
api.GetTextFromImage(bitmap) ocr.Read(imagePath).Text
api.SetVariable("tessedit_pageseg_mode", ...) ocr.Configuration.PageSegmentationMode = ...
OcrBitmap.FromFile(path) input.LoadImage(path)
Keine PDF-Unterstützung ocr.Read("document.pdf").Text
Keine durchsuchbare PDF-Datei result.SaveAsSearchablePdf("output.pdf")
Keine Vorverarbeitung input.Deskew(), input.DeNoise(), input.Contrast(), etc.
Keine Region OCR input.LoadImage(path, new CropRectangle(...))
Kein Barcode-Lesen ocr.Configuration.ReadBarCodes = true
Keine strukturierte Ausgabe result.Words, result.Lines, result.Pages
PageSegmentationMode enum TesseractPageSegmentationMode enum

Die vollständige IronOCR API-Oberfläche finden Sie in der IronTesseract-API-Referenz und der OcrResult-API-Referenz .

Wenn Teams einen Wechsel vom Patagames Tesseract .NET SDK zu IronOCR erwägen

Die Linux-Container-Bereitstellung

Der häufigste erzwungene Grund ist die Migration von WindowsServer zu Linux-Containern. Ein Team, das ein internes Dokumentenverarbeitungstool unter Windowsentwickelt hat und dabei Patagames für die OCR-Texterkennung verwendet, stellt während eines Cloud-Migrationsprojekts fest, dass die Bibliothek in einem Docker-Container auf Amazon ECS oder Azure Container Instances einfach nicht läuft. Für die nur unter Windowsverfügbare native Binärdatei gibt es kein Linux-Äquivalent. Die Migrationsoptionen bestehen entweder darin, eine separate Windows-Recheninstanz nur für OCR zu betreiben (teuer und architektonisch schwierig) oder die OCR-Bibliothek zu ersetzen.IronOCR ist aus API-Sicht ein direkter Ersatz – die mehrstufige Initialisierungssequenz von Patagames reduziert sich auf einen einzigen Leseaufruf – und die Anwendung läuft unter Linuxohne weitere Änderungen. Der IronOCR Docker-Leitfaden beschreibt die genaue Dockerfile-Konfiguration für den Einsatz in Produktionscontainern.

Die PDF-Verarbeitungsanforderung

Anwendungen zur Dokumentenverwaltung beginnen häufig mit der Bild-OCR und fügen dann im Laufe der Produktentwicklung Anforderungen an die PDF-Verarbeitung hinzu. Mit Patagames erfordert die PDF-Unterstützung die Integration einer externen PDF-Rendering-Bibliothek, das Schreiben einer Rendering-Schleife und die Verwaltung seitenweiser Bildpuffer. Teams, die diesen Wrapper-Code erstellt haben, empfinden ihn als fehleranfällig – die PDF-Rendering-Qualität variiert, die Handhabung der Seitenrotation erfordert zusätzliche Logik, und das Hinzufügen von Unterstützung für passwortgeschützte PDFs erfordert eine weitere externe Abhängigkeit.IronOCR erledigt das alles nativ. Der Leitfaden zur PDF-Eingabe umfasst einseitige, mehrseitige und passwortgeschützte PDFs. Durch den Übergang entfällt die Abhängigkeit vom externen PDF-Renderer und der gesamte Code, der zur Anbindung an Patagames geschrieben wurde.

Das Problem der Preistransparenz

Patagames veröffentlicht seine Lizenzpreise nicht. Teams, die OCR-Bibliotheken für ein neues Projekt evaluieren, können Patagames nicht budgetieren, ohne einen Vertriebsprozess einzuleiten. Die Preisgestaltung für IronOCR beginnt bei $999 für eine unbefristete Ein-Entwickler-Lite-Lizenz ohne Kosten pro Transaktion. Ein kleines Team kann eine fundierte Entscheidung zwischen Eigenbau und Kauf treffen, ohne ein Verkaufsgespräch. Für Teams, die zuvor Patagames gewählt haben, in der Annahme, dass kommerziell besser-als-kostenlos bedeutet, ändert die Entdeckung, dass IronOCR bei $999 unbefristet mit öffentlicher Preisgestaltung beginnt – im Gegensatz zu Patagames zu einem nicht offengelegten kommerziellen Preis –, häufig die gesamte Bewertung. Auf der IronOCR -Lizenzseite finden Sie alle Details zu den Lizenzstufen.

Das Problem mit der Scanqualität

Die Verarbeitung von Rechnungen, die Texterkennung von Formularen (OCR) und die Archivierung gescannter Dokumente erzeugen allesamt Bilder, die eine Vorverarbeitung erfordern. Eine auf Patagames basierende Pipeline für diese Arbeitsabläufe erfordert das Schreiben von Vorverarbeitungscode in System.Drawing oder einer Bildverarbeitungsbibliothek eines Drittanbieters, das manuelle Anpassen von Schwellenwerten und die Wartung dieses Codes bei schwankender Eingabequalität. Teams, die diese Infrastruktur aufgebaut haben, wissen, dass es 20 bis 40 Stunden dauert, bis sie richtig funktioniert. Die in IronOCR integrierte Vorverarbeitung macht diese Investition überflüssig – Entzerren, Rauschen entfernen, Kontrast anpassen und Binarisieren sind einzelne Methodenaufrufe, die die Fälle abdecken, die die meisten OCR-Genauigkeitsprobleme bei realen Scans verursachen. Das Beispiel des Scans mit geringer Qualität verdeutlicht den Unterschied in der Genauigkeit, den die Vorverarbeitung bei verrauschten Bildern bewirkt.

Die Anforderung an ein durchsuchbares PDF-Archiv

Anwendungen für Compliance, Recht und Dokumentenverwaltung benötigen durchsuchbare PDF-Ausgabe. Ein gescanntes Dokument benötigt eine Textebene, damit Benutzer in Acrobat oder einem beliebigen PDF-Viewer Inhalte suchen, kopieren und hervorheben können. Patagames verfügt über keinen Mechanismus zur Erstellung durchsuchbarer PDFs. Kostenlose Tesseract-Wrapper erzeugen hOCR-Ausgabe, die Sie mit Hilfe von Drittanbieter-Tools in eine Textebene konvertieren können, aber dieser Prozess hat mehrere bewegliche Teile.IronOCR verarbeitet die gesamte Pipeline mit einem einzigen Methodenaufruf – ohne externe Tools, ohne Zwischenschritt der hOCR-Konvertierung. Teams, die Archivierungssysteme entwickeln, erkennen diese Funktionslücke früh, und es ist selten möglich, diese Funktion durch einen Workaround in Patagames zu integrieren – sie erfordert den Austausch der Bibliothek.

Gemeinsame Überlegungen zur Migration

Ersetzen des tessdata-Verzeichnisses durch NuGet Pakete

Patagames erfordert ein tessdata-Verzeichnis, das mit .traineddata-Dateien für jede Sprache gefüllt ist. Die IronOCR Migration beseitigt dieses Problem vollständig. Sprachdaten werden als NuGet Paket installiert:

dotnet add package IronOcr.Languages.English, IronOcr.Languages.French

Die Sprache wird dann über das stark typisierte OcrLanguage enum referenziert. Keine Pfadkonfiguration, keine Bereitstellungscheckliste, keine Produktionsvorfälle aufgrund fehlender Tess-Daten.

Migration des OcrApi-Initialisierungsmusters

Das Patagames-Muster OcrApi.Create() / api.Init() hat ein direktes Gegenstück in IronOCR. Die Migration ist mechanisch:

// Patagames: before
using var api = OcrApi.Create();
api.Init(@"./tessdata", "eng");
using var bitmap = new Bitmap(imagePath);
var text = api.GetTextFromImage(bitmap);

// IronOCR: after
var text = new IronTesseract().Read(imagePath).Text;
// Patagames: before
using var api = OcrApi.Create();
api.Init(@"./tessdata", "eng");
using var bitmap = new Bitmap(imagePath);
var text = api.GetTextFromImage(bitmap);

// IronOCR: after
var text = new IronTesseract().Read(imagePath).Text;
Imports Patagames.Ocr
Imports System.Drawing

' Patagames: before
Using api = OcrApi.Create()
    api.Init("./tessdata", "eng")
    Using bitmap As New Bitmap(imagePath)
        Dim text = api.GetTextFromImage(bitmap)
    End Using
End Using

' IronOCR: after
Dim text = New IronTesseract().Read(imagePath).Text
$vbLabelText   $csharpLabel

Für mehrsprachige Konfigurationen werden "eng+fra+deu" zu einzelnen AddSecondaryLanguage-Aufrufen. Der Patagames-Aufruf von SetVariable("tessedit_pageseg_mode", ...) als rohe Zeichenkette mappt auf ocr.Configuration.PageSegmentationMode, das stark typisiert ist und über IntelliSense auffindbar.

System.Zeichnen Abhängigkeitsentfernung

Patagames hängt von System.Drawing.Bitmap ab.IronOCR akzeptiert Dateipfade, Byte-Arrays, Streams, URLs und System.Drawing.Bitmap-Objekte, aber die typische Nutzung erfordert System.Drawing überhaupt nicht. Teams, die von Patagames migrieren, können die Abhängigkeit von System.Drawing aus Klassen entfernen, die ausschließlich zum Erstellen von Bitmap-Objekten zum Übergeben an die OCR-API existierten. Dadurch werden Warnungen, die auf Nicht-Windows-Plattformen auftreten können, beseitigt und eine Abhängigkeit entfernt, die Microsoft offiziell als nicht empfehlenswert für die Entwicklung neuer Systeme auf Nicht-Windows-Plattformen gekennzeichnet hat. Die Bildeingabeanleitung listet alle unterstützten Eingabetypen auf.

Hinzufügen von Vorverarbeitung für bestehende Workflows

Falls die bestehende Patagames-Implementierung einen in System.Drawing oder ImageSharp geschriebenen Vorverarbeitungsschritt enthält, kann dieser Code beim Wechsel zu IronOCR oft vollständig entfernt werden. Testen Sie die IronOCR-Ausgabe zuerst ohne Vorverarbeitung. Für Bilder, bei denen die automatische Vorverarbeitung unzureichend ist, wenden Sie explizite Filter über OcrInput an:

using var input = new OcrInput();
input.LoadImage(imagePath);
input.Deskew();
input.DeNoise();
var result = new IronTesseract().Read(input);
using var input = new OcrInput();
input.LoadImage(imagePath);
input.Deskew();
input.DeNoise();
var result = new IronTesseract().Read(input);
Imports IronOcr

Using input As New OcrInput()
    input.LoadImage(imagePath)
    input.Deskew()
    input.DeNoise()
    Dim result = New IronTesseract().Read(input)
End Using
$vbLabelText   $csharpLabel

Der Leitfaden zur Bildausrichtungskorrektur behandelt die Erkennung von Schräglage und Drehung im Detail. In den meisten Fällen liefert die automatische Vorverarbeitung von IronOCR bessere Ergebnisse als eine manuell optimierte Vorverarbeitungspipeline von System.Drawing.

Zusätzliche Funktionen von IronOCR

Über die zentralen Vergleichspunkte hinaus bietet IronOCR Funktionen, die in den obigen Abschnitten nicht behandelt wurden:

  • Verarbeitung gescannter Dokumente : Automatische Verarbeitung mehrseitiger gescannter Dokumente, einschließlich TIFF-Stapel und mehrseitiger PDFs, in einem einzigen Eingabevorgang.
  • Asynchrone OCR : Nativeasynchrone Unterstützung für ASP.NET Core -Workloads, wodurch die Anfragethreads während der OCR-Verarbeitung frei bleiben.
  • Konfiguration zur Geschwindigkeitsoptimierung : Steuern Sie den Kompromiss zwischen Geschwindigkeit und Genauigkeit explizit für Stapelverarbeitungs-Workloads, bei denen der Durchsatz wichtiger ist als die Genauigkeit pro Dokument.
  • Spezielle Dokumententypen : Spezielle Anleitungen und optimierte Konfigurationen für Pässe, Kfz-Kennzeichen, MICR-Scheckzeilen, Handschrift und Tabellenextraktion – alles außerhalb des Anwendungsbereichs von Patagames.
  • Vertrauensbasierte Filterung : Vertrauenswerte pro Wort und pro Seite ermöglichen programmatische Qualitätsprüfungen – Ergebnisse mit geringem Vertrauen werden ohne manuelle Überprüfung abgelehnt oder gekennzeichnet.
  • Bildfarbkorrektur : Filter zur Isolierung und Invertierung von Farbkanälen verbessern die Erkennungsgenauigkeit bei Dokumenten mit farbigem Hintergrund oder Text mit umgekehrtem Kontrast.

.NET-Kompatibilität und Zukunftsfähigkeit

IronOCR unterstützt .NET 6, .NET 7, .NET 8 und .NET 9 aktiv sowie .NET Standard 2.0, um Kompatibilität mit .NET Framework -Projekten zu gewährleisten, die sich noch in der Wartungsphase befinden. Die Bibliothek liefert plattformübergreifende Laufzeit-IDs (win-x64, win-x86, linux-x64, osx-x64, osx-arm64) als Teil ihres NuGet-Abhängigkeitsgraphen und stellt sicher, dass dotnet publish für jede Zielumgebung eine eigenständige Bereitstellung ohne weitere Konfiguration produziert. Das Patagames Tesseract .NET SDK veröffentlicht keine Linux- oder macOS-Laufzeitkennungen, was bedeutet, dass es nicht an dem plattformübergreifenden Bereitstellungsmodell teilnehmen kann, auf dem .NET 6+ basiert. Da .NET Framework 4.x-Workloads auf .NET 8 migriert werden und Teams auf Linux-basierte Cloud-Infrastrukturen umsteigen, wird die Beschränkung auf Windowszu einem echten Hindernis und nicht nur zu einer geringfügigen Einschränkung. Der Entwicklungszyklus von IronOCR orientiert sich am .NET Releasezyklus, wobei die Kompatibilität für jede neue .NET Version bei deren Veröffentlichung dokumentiert ist.

Abschluss

Das Patagames Tesseract .NET SDK befindet sich in einer schwierigen Marktposition: Es verlangt kommerzielle Preise für Tesseract, eine Open-Source-Engine, die kostenlos erhältlich ist, und entfernt gleichzeitig die plattformübergreifende Funktionalität, die kostenlose Wrapper beibehalten. Das Wertversprechen – kommerzieller Support, vorkompilierte Binärdateien, vereinfachte API – war überzeugender, als die Entwicklung von Tesseract für Windowsnoch wirklich komplex war. Im Jahr 2026 werden auch kostenlose Wrapper wie tesseractocr vorkompilierte Windows-Binärdateien ausliefern, und die "vereinfachte API" über dem rohen Tesseract ist eine dünne Schicht, die dennoch die Pfadverwaltung von tessdata und rohe Variablenzeichenketten offenlegt.

Die Beschränkung auf Windowsist der deutlichste Grund, Patagames noch einmal zu überdenken. Moderne .NET -Entwicklungsworkflows nutzen CI unter Linux, stellen in Linux-Containern bereit und setzen zunehmend auf macOSals Zielrechner für Entwickler. Eine Bibliothek, die nur unter Windowsgeladen werden kann, ist keine geringfügige Unannehmlichkeit – sie stellt eine architektonische Einschränkung dar, die dazu führt, dass die OCR-Komponente auf einem Windows-spezifischen Dienst gehostet werden muss, die Bereitstellung komplexer gestaltet und die zukünftige Flexibilität einschränkt. Patagames bietet keinen Migrationspfad für Teams an, die diese Grenze überschreiten müssen.

Die kommerzielle Rechtfertigung von IronOCR ist spezifisch und messbar. Es bietet native PDF-Unterstützung, automatische Vorverarbeitung, durchsuchbare PDF-Ausgabe, plattformübergreifende Bereitstellung und strukturierte Ergebnisdaten – all das ist bei Patagames unabhängig von der Lizenzstufe nicht vorhanden. Die Preisgestaltung ist öffentlich ($999 unbefristet für einen einzelnen Entwickler), die Fähigkeiten über kostenlose Tesseract-Wrapper hinaus sind dokumentiert und konkret, und die Bereitstellungsgeschichte ist dieselbe, egal ob das Ziel ein Windows-Server, Dockerauf Linuxoder ein ARM Mac ist.

Für Teams, die Patagames derzeit in einer reinen Windows-Umgebung einsetzen und mit dem Support zufrieden sind, ist ein Wechsel mit Kosten verbunden. Doch für jedes Team, das heute Alternativen prüft – insbesondere für diejenigen, die Cloud-Migration, Containerisierung oder plattformübergreifende Unterstützung planen – ist Patagames aufgrund der Windows-Abhängigkeit und der intransparenten Preisgestaltung für die kostenlose Engine-Wrapper-Lösung schwer zu rechtfertigen, zumal IronOCR die Probleme löst, die Tesseract-Wrapper prinzipiell nicht bewältigen können.

Hinweis:PDFium, Tesseract und iText sind eingetragene Marken ihrer jeweiligen Eigentümer. Diese Webseite ist weder mit dem Chromium Project, Google noch iText Group verbunden, von ihnen unterstützt oder gesponsert. Alle Produktnamen, Logos und Marken sind Eigentum ihrer jeweiligen Besitzer. Vergleiche dienen nur zu Informationszwecken und spiegeln öffentlich zugängliche Informationen zum Zeitpunkt des Schreibens wider.

Häufig gestellte Fragen

Was ist das Patagames Tesseract.Net SDK?

Patagames Tesseract.Net SDK ist eine OCR-Lösung, die von Entwicklern und Unternehmen verwendet wird, um Text aus Bildern und Dokumenten zu extrahieren. Es ist eine von mehreren OCR-Optionen, die neben IronOCR for .NET für die Anwendungsentwicklung evaluiert wurden.

Wie ist IronOCR im Vergleich zu Patagames Tesseract.Net SDK for .NET-Entwicklern?

IronOCR ist eine NuGet-native OCR-Bibliothek für .NET, die IronTesseract als Kern-Engine verwendet. Im Vergleich zum Tesseract.Net SDK von Patagames bietet sie eine einfachere Bereitstellung (keine SDK-Installationsprogramme), Pauschalpreise und eine saubere C#-API ohne COM-Interop oder Cloud-Abhängigkeiten.

Ist IronOCR einfacher einzurichten als Patagames Tesseract.Net SDK?

IronOCR wird über ein einziges NuGet-Paket installiert. Es gibt keine SDK-Installationsprogramme, keine Lizenzdateien, die kopiert werden müssen, keine COM-Komponenten, die registriert werden müssen, und keine separaten Laufzeit-Binärdateien, die verwaltet werden müssen. Die gesamte OCR-Engine ist in diesem Paket enthalten.

Welche Genauigkeitsunterschiede bestehen zwischen Patagames Tesseract.Net SDK und IronOCR?

IronOCR erreicht eine hohe Erkennungsgenauigkeit für Standardgeschäftsdokumente, Rechnungen, Quittungen und gescannte Formulare. Bei stark degradierten Dokumenten oder ungewöhnlichen Skripten variiert die Genauigkeit je nach Qualität der Quelle. IronOCR enthält Bildvorverarbeitungsfilter zur Verbesserung der Erkennung bei Eingaben von geringer Qualität.

Unterstützt IronOCR die PDF-Textextraktion?

Ja, IronOCR extrahiert Text sowohl aus nativen PDF-Dateien als auch aus gescannten PDF-Bildern in einem einzigen Aufruf. Es unterstützt auch mehrseitige TIFF-Dateien, Bilder und Streams. Bei gescannten PDFs wird die OCR seitenweise mit seitenweisen Ergebnisobjekten angewendet.

Wie sieht die Lizenzierung des Tesseract.Net SDK von Patagames im Vergleich zu IronOCR aus?

IronOCR verwendet eine unbefristete Pauschallizenz, bei der keine Gebühren pro Seite oder pro Scan anfallen. Unternehmen, die große Dokumentenmengen verarbeiten, zahlen unabhängig vom Volumen die gleichen Lizenzkosten. Einzelheiten und Volumenpreise finden Sie auf der IronOCR-Lizenzierungsseite.

Welche Sprachen unterstützt IronOCR?

IronOCR unterstützt 127 Sprachen über separate NuGet-Sprachpakete. Das Hinzufügen einer Sprache erfordert einen einzigen Befehl 'dotnet add package IronOcr.Languages.{Language}'. Es ist keine manuelle Dateiablage oder Pfadkonfiguration erforderlich.

Wie installiere ich IronOCR in einem .NET -Projekt?

Installation über NuGet: 'Install-Package IronOcr' in der Paketmanager-Konsole oder 'dotnet add package IronOcr' in der CLI. Zusätzliche Sprachpakete werden auf die gleiche Weise installiert. Es ist kein natives SDK-Installationsprogramm erforderlich.

Ist IronOCR im Gegensatz zu Patagames Tesseract für Docker und containerisierte Implementierungen geeignet?

Ja, IronOCR funktioniert in Docker-Containern über sein NuGet-Paket. Der Lizenzschlüssel wird über eine Umgebungsvariable festgelegt. Für die OCR-Engine selbst sind keine Lizenzdateien, SDK-Pfade oder Volume-Mounts erforderlich.

Kann ich IronOCR im Vergleich zu Patagames Tesseract vor dem Kauf ausprobieren?

Ja. Der IronOCR-Testmodus verarbeitet Dokumente und liefert OCR-Ergebnisse mit einem Wasserzeichen als Overlay auf der Ausgabe. Sie können die Genauigkeit an Ihren eigenen Dokumenten überprüfen, bevor Sie eine Lizenz erwerben.

Unterstützt IronOCR neben der Textextraktion auch das Lesen von Barcodes?

IronOCR konzentriert sich auf die Textextraktion und OCR. Für das Lesen von Barcodes bietet Iron Software IronBarcode als Begleitbibliothek an. Beide sind einzeln oder als Teil des Iron Suite-Pakets erhältlich.

Ist es einfach, von Patagames Tesseract.Net SDK zu IronOCR zu migrieren?

Die Migration von Patagames Tesseract.Net SDK zu IronOCR umfasst in der Regel das Ersetzen von Initialisierungssequenzen durch IronTesseract-Instanziierung, das Entfernen des COM-Lifecycle-Managements und die Aktualisierung von API-Aufrufen. Die meisten Migrationen reduzieren die Komplexität des Codes erheblich.

Kannaopat Udonpant
Software Ingenieur
Bevor er Software-Ingenieur wurde, absolvierte Kannapat ein PhD in Umweltressourcen an der Hokkaido University in Japan. Während seines Studiums wurde Kannapat auch Mitglied des Vehicle Robotics Laboratory, das Teil der Fakultät für Bioproduktionstechnik ist. Im Jahr 2022 nutzte er seine C#-Kenntnisse, um dem Engineering-Team von Iron Software ...
Weiterlesen

Iron-Support-Team

Wir sind 24 Stunden am Tag, 5 Tage die Woche online.
Chat
E-Mail
Rufen Sie mich an