IRONSOFTWAREHOME

Lesen von BarCodes und QR-Codes in C# mit IronOCR

Curtis Chau
Curtis Chau
Updated: 4. Juni 2026

IronOCR liest Barcodes und QR-Codes in C#, indem es ReadBarCodes = true in der Konfiguration festlegt. Diese einzige Einstellung ermöglicht die automatische Extraktion von Barcodewerten aus PDFs und Bildern neben der normalen Texterkennung und unterstützt über 20 Barcodeformate, darunter QR-Codes, Code 128 und Data Matrix.

Schnellstart: Barcodes sofort aus einem PDF lesen

Aktivieren Sie die Barcode-Erkennung mit einer Einstellung und scannen Sie PDFs mit IronOCR. Der folgende Code zeigt, wie das Lesen von Barcodes aktiviert, eine PDF-Datei verarbeitet und dekodierte Werte abgerufen werden.

  1. 1Install IronOCR with NuGet Package Manager

    PM > Install-Package IronOcr

  2. 2Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.

    var result = new IronOcr.IronTesseract() { Configuration = new IronOcr.TesseractConfiguration { ReadBarCodes = true } }.Read(new IronOcr.OcrPdfInput("document.pdf"));
    foreach(var bc in result.Barcodes) Console.WriteLine(bc.Value);
    C#
  3. 3Bereitstellen zum Testen in Ihrer Live-Umgebung

    Beginnen Sie noch heute, IronOCR in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion
    arrow pointer

Wie kann ich BarCodes aus PDF-Dokumenten lesen?

Erstellen Sie ein IronTesseract-Objekt, um das Lesen durchzuführen. Setzen Sie die ReadBarCodes-Eigenschaft auf true, um die Barcode-Erkennung zu aktivieren. Import the PDF document using the OcrPdfInput constructor. Verwenden Sie die Read-Methode, um OCR auf dem importierten PDF auszuführen.

Hier ist ein Beispiel für dieses PDF-Dokument:

using IronOcr;
using System;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Enable barcode reading
ocrTesseract.Configuration.ReadBarCodes = true;

// Add PDF
using var imageInput = new OcrPdfInput("pdfWithBarcodes.pdf");

// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Output detected barcodes and text values
Console.WriteLine("Extracted text:");
Console.WriteLine(ocrResult.Text);
Console.WriteLine("Extracted barcodes:");
foreach (var barcode in ocrResult.Barcodes)
{
    Console.WriteLine(barcode.Value);
}
IronOCR-Debug-Ausgabe mit extrahiertem Text und drei BarCodes (A, B, C) aus PDF mit Geschäftsprofilen

Mehrere BarCode-Werte erscheinen unter den BarCodes und sind im extrahierten Text enthalten.

Warum extrahiert IronOCR sowohl Text- als auch BarCode-Werte?

Die duale Extraktion von IronOCR bietet eine umfassende Dokumentenanalyse. Bei der Verarbeitung von Dokumenten, die sowohl Text als auch Barcodes enthalten, führt die Bibliothek eine standardmäßige OCR-Textextraktion durch und dekodiert gleichzeitig BarCode-Symbologien. Dieser einheitliche Ansatz macht mehrere Verarbeitungsschritte oder separate Bibliotheken überflüssig.

Die Textextraktion erfasst menschenlesbare Elemente, während die Barcode-Erkennung maschinenlesbare Daten identifiziert und dekodiert. Dies kommt Dokumenten wie Rechnungen, Versandetiketten oder Bestandsberichten zugute, bei denen Barcodewerte mit gedrucktem Text korrelieren. Die OcrResult-Klasse trennt diese Ausgaben – greifen Sie über die Text-Eigenschaft auf Text zu und über die Barcodes-Sammlung auf Barcode-Daten.

Welche BarCode-Formate werden unterstützt?

IronOCR unterstützt über 20 Barcode-Formate:

1D BarCodes:

  • Code 128, Code 39, Code 93
  • EAN-13, EAN-8
  • UPC-A, UPC-E
  • Codabar
  • ITF (Interleaved 2 von 5)
  • MSI
  • Plessey

2D BarCodes:

  • QR-Code
  • Datenmatrix
  • PDF417
  • Azteken-Code
  • MaxiCode

Für spezialisierte Anwendungen wie das Lesen von MICR-Schecks oder die Verarbeitung von Ausweisdokumenten ergänzen die Barcode-Funktionen von IronOCR die Textextraktionsfunktionen.

Wann sollte ich OCR für das Lesen von Barcodes anstelle von dedizierten Barcode-Bibliotheken verwenden?

Entscheiden Sie sich für IronOCRs integrierte Barcode-Lesung, wenn:

  1. Mixed Content Processing: Dokumente enthalten sowohl Text als auch BarCodes (Versandetiketten, Rechnungen oder gescannte Dokumente)
  2. Single Library Preference: Sie möchten Abhängigkeiten minimieren und eine einzige Lösung verwenden
  3. PDF-Verarbeitung: Sie verwenden IronOCR bereits für PDF OCR Textextraktion
  4. Komplexe Dokumentenlayouts: Dokumente haben BarCodes, die in Textbereiche oder Tabellen eingebettet sind

Verwenden Sie spezielle BarCode-Bibliotheken, wenn:

  • Verarbeitung großer Mengen reiner Barcode-Bilder
  • BarCode-Scannen in Echtzeit erforderlich (< 50 ms Reaktionszeit)
  • Arbeit mit beschädigten oder minderwertigen Barcodes, die spezielle Algorithmen erfordern
  • Implementierung des mobilen Barcode-Scannens mit Kameraoptimierung

Wie lese ich QR-Codes aus Dokumenten?

Wie bei der Barcode-Erkennung setzen Sie die ReadBarCodes-Eigenschaft auf true. Außer dem Dateipfad sind keine weiteren Änderungen am Code erforderlich. Verarbeiten Sie dieses PDF-Dokument mit QR-Codes:

using IronOcr;
using System;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Enable barcode reading
ocrTesseract.Configuration.ReadBarCodes = true;

// Add PDF
using var imageInput = new OcrPdfInput("pdfWithQrCodes.pdf");

// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Output detected barcodes and text values
Console.WriteLine("Extracted text:");
Console.WriteLine(ocrResult.Text);
Console.WriteLine("Extracted barcodes:");
foreach (var barcode in ocrResult.Barcodes)
{
    Console.WriteLine(barcode.Value);
}
IronOCR-Ausgabe in Visual Studio mit extrahiertem Text und erfolgreich dekodierten QR-Codes A, B und C aus dem Dokument

Warum funktioniert die gleiche Konfiguration sowohl für BarCodes als auch für QR-Codes?

Die einheitliche Barcode-Erkennungsfunktion von IronOCR behandelt alle maschinenlesbaren Codes gleich. Die ReadBarCodes-Konfiguration aktiviert einen umfassenden Symbologie-Detektor, der sowohl 1D (lineare Barcodes) als auch 2D (QR-Codes, Data Matrix) Formate erkennt, ohne dass formatspezifische Einstellungen erforderlich sind. Dieses Design vereinfacht die Implementierung und reduziert die Komplexität der Konfiguration.

Der Erkennungsalgorithmus erkennt automatisch:

  • Identifiziert den Symbologietyp anhand von Mustererkennung
  • Angemessene Dekodierungsalgorithmen anwenden
  • Beherrscht Ausrichtung und Größenunterschiede
  • Liefert Ergebnisse in einem einheitlichen Format, unabhängig vom Barcodetyp

Dieser Ansatz spiegelt wider, wie Computer-Vision-Modelle funktionieren - sie werden auf mehrere Formate trainiert, um universelle Erkennungsmöglichkeiten zu bieten.

Was sind häufige Probleme beim Lesen von QR-Codes mit OCR?

Zu den üblichen Herausforderungen bei der Verarbeitung von QR-Codes gehören:

  1. Auflösungsprobleme: QR-Codes in PDFs werden möglicherweise unter die Mindestmodulgröße heruntergerechnet. Verwenden Sie DPI-Einstellungen, um eine angemessene Auflösung zu gewährleisten (mindestens 300 DPI empfohlen).

  2. Bildqualität: Gescannte QR-Codes sind oft unscharf, verrauscht oder verzerrt. Wenden Sie Bildkorrekturfilter an, um die Klarheit zu verbessern:

// Apply filters to improve QR code readability
ocrTesseract.Configuration.ReadBarCodes = true;
var input = new OcrImageInput("qr-code-scan.jpg");
input.DeNoise();
input.Sharpen();
input.EnhanceResolution();

var result = ocrTesseract.Read(input);
  1. Orientierungsprobleme: QR-Codes in Schräglage werden möglicherweise nicht richtig entschlüsselt. Aktivieren Sie die Seitenrotationserkennung, um falsch ausgerichtete Dokumente zu behandeln.

  2. Mixed Content Interference: Text oder Grafiken, die sich mit QR-Codes überschneiden, können die Erkennung verhindern. Verwenden Sie Zuschnittbereiche, um bei Bedarf QR-Code-Bereiche zu isolieren.

Wie kann ich die Erkennungsgenauigkeit von QR-Codes verbessern?

Optimieren Sie die QR-Code-Erkennung mit diesen Techniken:

  1. Bilder vorverarbeiten: Verwenden Sie den Filter-Assistenten, um die optimalen Verbesserungseinstellungen zu ermitteln:
// Enhanced QR code reading with preprocessing
var ocrTesseract = new IronTesseract();
ocrTesseract.Configuration.ReadBarCodes = true;

// Configure for better QR detection
var input = new OcrImageInput("document-with-qr.pdf");
input.TargetDPI = 300; // Ensure sufficient resolution
input.Binarize(); // Convert to black and white
input.DeNoise(); // Remove image artifacts

var result = ocrTesseract.Read(input);
  1. Mehrere Seiten handhaben: Für mehrseitige Dokumente mit QR-Codes auf mehreren Seiten:
// Process multi-page documents efficiently
using var pdfInput = new OcrPdfInput("multi-page-qr-document.pdf");
pdfInput.TargetDPI = 300;

var results = ocrTesseract.Read(pdfInput);
foreach (var page in results.Pages)
{
    Console.WriteLine($"Page {page.PageNumber}:");
    foreach (var barcode in page.Barcodes)
    {
        Console.WriteLine($"  QR Code: {barcode.Value}");
        Console.WriteLine($"  Location: X={barcode.X}, Y={barcode.Y}");
    }
}
  1. Asynchrone Verarbeitung: Für eine bessere Leistung bei mehreren Dokumenten, verwenden Sie async Methoden:
// Asynchronous QR code reading
var result = await ocrTesseract.ReadAsync(imageInput);
  1. Fehlererkennung: Aktivieren Sie Ergebnishervorhebung, um zu visualisieren, was IronOCR erkennt:
result.SaveAsHighlightedImage("qr-detection-debug.png");

Leistungsoptimierung für die Verarbeitung von BarCodes in großem Maßstab

Wenn Sie Tausende von Dokumenten mit Barcodes und QR-Codes verarbeiten, sollten Sie diese Optimierungsstrategien anwenden:

  1. Multithreading: Nutzen Sie die Multithreading-Verarbeitung, um mehrere Dokumente gleichzeitig zu verarbeiten:
// Process multiple documents in parallel
var documents = new[] { "doc1.pdf", "doc2.pdf", "doc3.pdf" };
var results = documents.AsParallel().Select(doc =>
{
    var tesseract = new IronTesseract();
    tesseract.Configuration.ReadBarCodes = true;
    return tesseract.Read(new OcrPdfInput(doc));
}).ToList();
  1. Speichermanagement: Verwenden Sie Abbruch-Tokens für lang laufende Operationen:
// Implement cancellation for large batch processing
using var cts = new CancellationTokenSource();
ocrTesseract.Configuration.CancellationToken = cts.Token;

// Cancel if processing takes too long
cts.CancelAfter(TimeSpan.FromMinutes(5));
  1. Ergebnis-Export: Speichern Sie die Ergebnisse als durchsuchbare PDFs, um sowohl Text- als auch Barcode-Daten zu erhalten:
// Export results with embedded barcode values
result.SaveAsSearchablePdf("output-with-barcodes.pdf");

Integration mit Geschäftsanwendungen

IronOCRs Barcode-Funktionen lassen sich nahtlos in bestehende .NET-Anwendungen integrieren. Zu den üblichen Integrationsszenarien gehören:

  • Bestandsmanagement: Extrahieren von Produktcodes aus Versandmanifesten
  • Dokumentenarchivierung: Indizierung gescannter Dokumente durch eingebettete BarCode-Identifikatoren
  • Rechnungsverarbeitung: Abgleich von BarCode-SKUs mit Einzelposten in Finanzdokumenten
  • Aufzeichnungen im Gesundheitswesen: Verarbeiten Sie Barcodes von Patientenarmbändern zusammen mit medizinischen Formularen

Für Produktionsanwendungen, die große Mengen an Barcodes und QR-Codes verarbeiten, sollten Sie die Implementierung einer Fortschrittsverfolgung in Betracht ziehen, um den Verarbeitungsstatus zu überwachen und die Leistung auf der Grundlage realer Metriken zu optimieren.

Häufig gestellte Fragen

Wie kann ich das Lesen von Barcodes in meiner C#-Anwendung aktivieren?

Mit IronOCR aktivieren Sie das Lesen von Barcodes, indem Sie ReadBarCodes = true in der TesseractConfiguration einstellen. Diese einzige Einstellung aktiviert die automatische Extraktion von Barcodewerten aus PDFs und Bildern neben der normalen Texterkennung und unterstützt über 20 Barcodeformate.

Kann ich sowohl Text als auch BarCodes aus demselben Dokument lesen?

Ja, IronOCR führt eine duale Extraktion durch - es erfasst menschenlesbaren Text durch Standard-OCR und dekodiert gleichzeitig maschinenlesbare Barcodes. Die Klasse OcrResult trennt diese Ausgaben, wobei der Text über die Eigenschaft Text und die Barcodedaten über die Sammlung Barcodes zugänglich sind.

Welche BarCode-Formate können erkannt werden?

IronOCR unterstützt über 20 Barcode-Formate, darunter 1D-Barcodes (Code 128, Code 39, Code 93, EAN-13, EAN-8, UPC-A, UPC-E, Codabar, ITF, MSI, Plessey) und 2D-Barcodes (QR-Code, Data Matrix und mehr).

Wie kann ich Barcodes aus PDF-Dokumenten extrahieren?

Erstellen Sie ein IronTesseract-Objekt, setzen Sie ReadBarCodes auf true, importieren Sie Ihr PDF mit dem OcrPdfInput-Konstruktor und verwenden Sie dann die Read-Methode. IronOCR führt OCR durch und extrahiert alle erkannten Barcodewerte, auf die Sie über die result.BarCodes-Sammlung zugreifen können.

Benötige ich separate Bibliotheken für die OCR von Text und das Lesen von Barcodes?

Nein, der einheitliche Ansatz von IronOCR macht mehrere Verarbeitungsschritte oder separate Bibliotheken überflüssig. Es führt eine standardmäßige OCR-Textextraktion durch und dekodiert gleichzeitig Barcodesymbologien in einem einzigen Vorgang.

How can I improve the accuracy of QR code recognition with IronOCR?

Improve QR code recognition by ensuring high resolution, applying image corrections like de-noising and sharpening, and handling orientation issues.

What are common challenges when reading QR codes with OCR?

Common challenges include resolution issues, image quality problems, orientation errors, and interference from overlapping text or graphics.

Can IronOCR handle multi-page PDF documents with barcodes?

Yes, IronOCR can process multi-page PDF documents with barcodes by reading each page individually and outputting detected barcode values and formats.

What is the benefit of using IronOCR for PDF text extraction and barcode reading?

Using IronOCR allows for unified text and barcode extraction from PDF documents, reducing the need for separate libraries and processing steps for each type of data.

How can IronOCR's barcode capabilities integrate into business applications?

IronOCR can be used in various business applications such as inventory management, document archiving, invoice processing, and healthcare records by extracting and processing barcode information.

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 Handbücher.

...
Weiterlesen

Bereit anzufangen?

Nuget Downloads 6,236,385Version:2026.9gerade veröffentlicht

Holen Sie sich Ihre KOSTENLOSE

30-Tage-Testlizenz sofort.

bullet_checkedKeine Kreditkarte oder Kontoerstellung erforderlich
bullet_testTesten Sie in der Produktion
ohne Wasserzeichen
bullet_calendar30 Tage voll
funktionsfähiges Produkt
bullet_support24/5 technischer
Support während der Testphase
Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.
C# NuGet-Bibliothek für PDF
Installation mit NuGet

Version: 2026.9

PM > Install-Package IronOcr
nuget.org/packages/IronOcr/
  1. Rechtsklick auf Referenzen, NuGet-Pakete verwalten
  2. Wählen Sie Durchsuchen und suchen Sie nach "IronOCR"
  3. Paket auswählen und installieren
C# PDF DLL
Download DLL

Version: 2026.9

oder laden Sie den Windows Installer hier herunter.

  1. Laden Sie IronOCR herunter und entpacken Sie es in einem Ordner wie ~/Libs in Ihrem Lösungsverzeichnis.
  2. Klicken Sie im Visual Studio Solution Explorer mit der rechten Maustaste auf Referenzen. Wählen Sie Durchsuchen, "IronOCR.dll"

Lizenzen von $999

Key in blue circle

Holen Sie sich sofort Ihren kostenlosen 30-Tage-Testschlüssel.

Your trial license will be sent to your email address

Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.

bullet_checkedIhr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Erhalten Sie Ihre unverbindliche Beratung
Füllen Sie das Formular unten aus oder senden Sie eine E-Mail an sales@ironsoftware.com
Ihre Daten werden immer vertraulich behandelt.
Von Millionen von Ingenieur*innen weltweit vertraut
Kundenlogos von Iron Software
Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.