OCR-Bibliothek für C#:
OCR in eine .NET-Anwendung integrieren
Wenn Sie Anwendungen mit .NET entwickeln, können Sie mit dem passenden OCR-SDK gescannte PDFs und Bilder in durchsuchbare PDFs mit auswählbarem Text umwandeln. Zudem lassen sich Daten im JSON- oder XML-Format extrahieren. Erfahren Sie, wie Sie diese Funktionen in Ihrer eigenen Infrastruktur und ohne externe Dienste umsetzen.
Funktionen des Apryse OCR-Moduls für C#
Das Apryse OCR-Modul ist ein separat lizenziertes Add-on für das Apryse Server SDK. Installieren Sie das Basis-SDK über NuGet: PDFNet für .NET Framework oder PDFTron.NET.x64 (bzw. PDFTron.NET.ARM für ARM64) für .NET 8/9. Rufen Sie pdftron.PDFNet.Initialize() auf, bevor Sie eine SDK-Methode nutzen. Ihr Testschlüssel bietet Ihnen vollen Zugriff auf alle Add-ons für das Server SDK.
Unterstützte Eingabeformate sind JPEG, PNG, TIFF, BMP und bildbasierte PDFs. Der OCR-Vorgang erstellt wahlweise eine durchsuchbare PDF mit auswählbarer Textebene oder strukturierte JSON- bzw. XML-Daten mit Text und Positionsdaten.
In diesem Beitrag erfahren Sie, wie Sie das OCR Module in einem C#- oder .NET-Projekt installieren, gescannte PDFs per OCR verarbeiten und die Ergebnisse als durchsuchbare PDFs oder strukturierte JSON- bzw. XML-Daten ausgeben. Einen Überblick über alle Funktionen finden Sie unter „OCR-Funktionen von Apryse“. Fordern Sie einen Testschlüssel an und testen Sie das Modul selbst.
Installation: .NET Framework und .NET 8/9
Das Apryse Server SDK lässt sich einfach über NuGet installieren.
.NET Framework (4.5.1 oder höher):
Suchen Sie im NuGet-Paket-Manager von Visual Studio nach PDFNet und installieren Sie das Paket. Über PDFNetLoader werden Builds für x86 und x64 bereitgestellt. Zur Laufzeit wird automatisch der passende Build geladen. So müssen Sie die Referenzen in Any-CPU-Projekten nicht manuell verwalten. Nutzen Sie die manuelle Option nur, wenn Ihr Projekt auf eine feste Architektur ausgelegt ist und PDFNetLoader nicht benötigt: Laden Sie PDFNetDotNet4.zip herunter und binden Sie PDFNet.dll sowie PDFNetLoader.dll direkt ein.
.NET 8/9:
Führen Sie dotnet add package PDFTron.NET.x64 aus (oder PDFTron.NET.ARM für ARM64-Zielsysteme). Alternativ können Sie weiterhin PDFNetC64.zip herunterladen und direkt auf PDFNet.dll verweisen, wenn Ihre Build-Umgebung keine NuGet-Pakete unterstützt.
Bereitstellung mit Docker und Linux
Installieren Sie für Linux und Container dasselbe NuGet-Paket wie für andere .NET-8/9-Ziele: PDFTron.NET.x64 oder PDFTron.NET.ARM für ARM64. Initialisieren Sie PDFNet einmal beim Start des Containers und beenden Sie es beim Herunterfahren – nicht bei jeder Anfrage. Die Standard-Engine nutzt die CPU; eine GPU ist nicht nötig. Docker unterstützt den symbolischen Link der nativen SDK-Bibliothek nicht. Kopieren Sie daher libPDFNetC.so in Ihrem Dockerfile direkt nach /usr/lib/. Entfernen Sie danach entweder den symbolischen Link und benennen Sie die .so-Datei mit Versionsnummer in libPDFNetC.so um, oder verweisen Sie in Ihrer .csproj-Datei direkt auf diese Datei. Beide Optionen sind in den Docker-FAQ von Apryse beschrieben.
Gescannte PDFs per OCR in durchsuchbare PDFs umwandeln
Mit dem folgenden Codebeispiel fügen Sie einer bildbasierten PDF, etwa einem gescannten Dokument, per OCR eine unsichtbare Textebene hinzu. So lässt sich der Inhalt durchsuchen:
Unter „Durchsuchbaren und auswählbaren Text zu einer bildbasierten PDF hinzufügen“ finden Sie ein vollständiges Codebeispiel. Es zeigt, wie Sie das OCR-Modul von Apryse in Java für gescannte Dokumente einsetzen.
OCR-Ergebnisse in C# als JSON oder XML extrahieren
Derselbe OCR-Vorgang kann strukturierte Daten im JSON- oder XML-Format ausgeben – wahlweise anstelle einer durchsuchbaren PDF oder zusätzlich dazu. Die Ausgabe umfasst den erkannten Text, die Position jedes Wortes und die Seitenzahlen. Eine weitere Bibliothek ist dafür nicht erforderlich.
Wenn Sie die OCR-Rohdaten auf das Eingabedokument anwenden möchten, rufen Sie entweder OCRModule::ImageToPDF für eine Bilddatei oder OCROptions::ProcessPDF für eine PDF-Datei auf. In vielen Fällen empfiehlt es sich jedoch, die Daten vorher zu prüfen und etwa mit Positiv- oder Negativlisten abzugleichen. Extrahieren Sie dazu zunächst den Text und die zugehörigen Metadaten als JSON oder XML. Danach können Sie die Daten verarbeiten und wieder auf das Eingabedokument anwenden.
Die extrahierten Felder können Sie anschließend zum Beispiel in eine Pipeline zur KI-Datenaufnahme überführen, in einer Datenbank speichern oder mit den erwarteten Werten der Formularfelder abgleichen.
Apryse OCR im Vergleich mit IronOCR und Tesseract.NET
Wenn Sie Ihre .NET-Anwendung um OCR-Funktionen erweitern möchten, prüfen Sie vermutlich auch Lösungen wie IronOCR und Tesseract. Dieser kurze Vergleich zeigt die wichtigsten Unterschiede. Während IronOCR Tesseract als interne OCR-Engine nutzt, setzt das Apryse OCR-Modul standardmäßig auf eine eigene Deep-Learning-Engine statt auf einen Tesseract-Wrapper.
IronOCR bietet eine gut dokumentierte .NET-API und eine integrierte Barcode-Erkennung. Apryse bietet jedoch klare Vorteile: Ein einziger OCR-Aufruf erstellt sowohl eine durchsuchbare PDF-Datei als auch strukturierte JSON- oder XML-Daten mit Positionsangaben. Bei IronOCR ist zusätzlicher Code nötig, um beide Formate aus einem Dokument zu erzeugen. Apryse ist zudem nach SOC 2 und ISO 27001 zertifiziert. Das Pauschallizenzmodell sorgt auch bei großen Mengen für planbare Kosten, da keine Gebühren pro Seite anfallen.
Tesseract.NET (der NuGet-Wrapper) ist eine kostenlose Option für Projekte mit kleinem Budget und einfachen Dokumenttypen. Allerdings fehlen Enterprise-Support, SLA sowie Zertifizierungen nach SOC 2 und ISO 27001. Zudem gibt die Lösung nur Text aus. Für durchsuchbare PDFs oder strukturierte Daten mit Positionsangaben sind daher weitere Bibliotheken und eigener Code nötig.
Der Vergleich basiert auf öffentlich verfügbaren Informationen mit Stand 2026.
Lokale Offline-OCR mit C#
Wenn Sie Vorgaben zur Datenhaltung erfüllen, in isolierten Systemen arbeiten oder Dokumente nicht an Dritte senden dürfen, können Sie das OCR-Modul von Apryse komplett in Ihrer eigenen Umgebung betreiben. Für die Verarbeitung sind keine externen Verbindungen nötig. Damit eignet sich das Modul für regulierte Branchen und Systeme ohne Netzzugang. Cloud-Dienste wie Azure Computer Vision oder Google Document AI benötigen dagegen eine aktive Verbindung zu den Systemen des Anbieters. Sie lassen sich daher weder offline noch in isolierten Umgebungen nutzen. Prüfen Sie bei Open-Source-OCR-SDKs, ob sie während der Verarbeitung externe APIs aufrufen.
