IRONSOFTWAREHOME

Deutsche OCR in C# und .NET

Curtis Chau
Curtis Chau
Updated: 2026年4月23日
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:

  • Deutsch
  • GermanBest
  • GermanFast
  • GermanFraktur

Herunterladen

Deutsches Sprachpaket [Deutsch]

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;
}

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;

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);
}

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
}

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);
}

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
    }
}

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);
}

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);
}

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");
}

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");
}

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");
}

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);
}

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");
}

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");
}

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
}

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.

Curtis Chau
技术作家

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

...
阅读更多

准备开始了吗?

Nuget Downloads 6,236,385版本:2026.9刚刚发布

立即获取您的免费30 天试用密钥
无需信用卡或创建账户
C# 用于 PDF 的 NuGet 库
通过 NuGet 安装

版本: 2026.9

PM > Install-Package IronOcr
nuget.org/packages/IronOcr/
  1. 在解决方案资源管理器中,右键点击引用,管理 NuGet 包
  2. 选择浏览并搜索"IronOCR"
  3. 选择包并安装
C# PDF DLL
下载 DLL

版本: 2026.9

或在这里下载Windows安装程序。

  1. 下载并解压IronOCR到你的解决方案目录中的~/Libs位置
  2. 在Visual Studio解决方案资源管理器中,右键点击引用。选择浏览,“IronOCR.dll”

许可证售价$999

Key in blue circle

立即获取免费的 30 天试用版密钥

Your trial license will be sent to your email address

无任何限制。100% 解锁。无需信用卡。

bullet_checked无需信用卡或创建账户无任何限制。100% 解锁。无需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
获取您的无义务咨询
填写下面的表格或通过sales@ironsoftware.com
您的资料将始终保密。
深受全球数百万工程师信赖
Iron Software 的客户徽标
立即获取您的免费30 天试用密钥
无需信用卡或创建账户