IRONSOFTWAREHOME

How to Read Barcodes from Streams with C#

Hairil Hasyimi Bin Omar
Hairil Hasyimi Bin Omar
Updated: 4. Juni 2026

IronBarcode liest Barcodes direkt aus MemoryStream-Objekten in .NET-Anwendungen, sodass es nicht erforderlich ist, Streams zuerst auf die Festplatte zu speichern. Dies ermöglicht eine effiziente Barcode-Verarbeitung sowohl aus Bild- als auch aus PDF-Dokumenten-Streams, die im Speicher gespeichert sind.

MemoryStream ist eine .NET Framework-Klasse, die aus im Speicher gespeicherten Streams liest und in diese schreibt. Es manipuliert Daten ohne physische Dateien und speichert sie stattdessen im Speicher. Dieser Ansatz eignet sich gut für Webanwendungen, APIs oder Szenarien, in denen Sie Barcodedaten als Byte-Arrays erhalten oder Bilder verarbeiten müssen, ohne temporäre Dateien zu erstellen.

Neben Lesen von Barcodes aus Bilddateien oder PDF-Dateien liest IronBarcode auch Barcodes aus Streams. Die Bibliothek akzeptiert PDF-Dokumente oder Bildströme als Eingabe und gibt die Ergebnisse des Barcode-Lesens aus. Diese Fähigkeit eignet sich für die Verarbeitung von Daten aus Datenbanken, Web-Uploads oder Memory-Cache-Inhalten.

Schnellstart: Barcode direkt aus Bildstream lesen

Verwenden Sie zwei Zeilen Code mit IronBarcode, um Barcodes aus einem beliebigen Bildstrom zu lesen - ohne dass die Festplatte beschrieben werden muss. Dieses Beispiel demonstriert das Lesen von Barcodes in .NET.

  1. 1Install IronBarcode with NuGet Package Manager

    PM > Install-Package BarCode

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

    var result = IronBarCode.BarcodeReader.Read(myImageStream);
    Console.WriteLine(result[0].Text);
    C#
  3. 3Bereitstellen zum Testen in Ihrer Live-Umgebung

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

Wie lese ich BarCodes aus Bildströmen?

Warum Memory Streams anstelle von Dateien verwenden?

Memory Streams bieten mehrere Vorteile gegenüber dateibasierten Operationen. Sie eliminieren den Festplatten-E/A-Overhead und machen Anwendungen schneller. Sie erhöhen die Sicherheit, da die sensiblen Barcodedaten nicht auf die Festplatte gelangen. Sie eignen sich auch für Cloud-Umgebungen, in denen der Festplattenzugriff begrenzt oder teuer ist. In Kombination mit den Async- und Multithreading-Funktionen von IronBarcode können Sie mehrere Datenströme gleichzeitig verarbeiten und so maximale Leistung erzielen.

Dieser Abschnitt zeigt, wie IronBarcode verwendet wird, um einen Bildstream und mehrere Bildstreams zu lesen, die in einem List<MemoryStream> gespeichert sind. Der folgende Code enthält Kommentare, um den Prozess zu erklären:

Welche Arten von Bildformaten werden unterstützt?

IronBarcode unterstützt mehrere Bildformate beim Lesen von Streams: JPEG, PNG, GIF, TIFF, BMP und SVG. Diese Flexibilität ermöglicht die Verarbeitung von Barcode-Bildern unabhängig vom Quellformat. Optimale Ergebnisse erzielen Sie, wenn Sie die BarCode-Reader-Einstellungen für die Feinabstimmung des Lesevorgangs verwenden.

using IronBarCode;
using IronSoftware.Drawing;
using System;
using System.Collections.Generic;
using System.IO;

List<MemoryStream> list = new List<MemoryStream>();
list.Add(AnyBitmap.FromFile("image1.jpg").ToStream());
list.Add(AnyBitmap.FromFile("image2.jpg").ToStream());
list.Add(AnyBitmap.FromFile("image3.png").ToStream());

var myBarcode = BarcodeReader.Read(list);

foreach (var barcode in myBarcode)
{
    Console.WriteLine(barcode.ToString());
}

Wie behandle ich mehrere Bildströme?

Der obige Code zeigt, dass IronBarcode entweder ein einzelnes MemoryStream-Objekt oder eine Liste von MemoryStream-Objekten in der BarcodeReader.Read()-Methode akzeptiert. Das Beispiel konvertiert Bilddateien in MemoryStream-Objekte und liest Barcodes direkt aus den Streams.

Bei der Verarbeitung mehrerer Datenströme nutzt IronBarcode seine Lesegeschwindigkeitsoptionen effizient aus. Passen Sie die Lesegeschwindigkeit an Ihre Bedürfnisse an - ob maximale Genauigkeit oder schnellste Bearbeitungszeit. Zum Lesen mehrerer Barcodes aus einem einzigen Datenstrom erkennt IronBarcode automatisch alle gefundenen Barcodes und gibt sie zurück.

Um die Genauigkeit bei unvollkommenen oder qualitativ schlechten Bildern in Streams zu verbessern, sollten Sie vor der Verarbeitung Bildkorrekturfilter anwenden. Dies verbessert die Erkennungsraten von Barcodes erheblich.

Wie kann ich BarCodes aus PDF-Dokumentenströmen lesen?

Warum ReadPdf() anstelle von Read() verwenden?

Die ReadPdf()-Methode optimiert speziell für PDF-Dokumente und bietet Vorteile gegenüber der generischen Read()-Methode. PDF-spezifische Funktionen wie mehrseitige Dokumente, Vektorgrafiken und eingebettete Bilder werden effizient behandelt. Die Methode verarbeitet alle PDF-Seiten automatisch und kommt mit verschiedenen PDF-Formaten und Komprimierungsarten zurecht. Umfassende Funktionen finden Sie im Tutorial zum Lesen von Strichcodes.

Dieser Abschnitt demonstriert die Verwendung von IronBarcode, um PDF-Dokumentdateien als MemoryStream-Objekte oder Listen von PDF-Dokumenten-Streams zu lesen. Hier ist der Code:

Was ist mit mehreren PDF-Dokumenten?

using IronBarCode;
using IronPdf;
using System;
using System.IO;

MemoryStream document = PdfDocument.FromFile(@"file_path.pdf").Stream;

var myBarcode = BarcodeReader.ReadPdf(document);

foreach (var value in myBarcode)
{
    Console.WriteLine(value.ToString());
}

Wie kann ich mehrere PDF-Streams effizient verarbeiten?

Das Lesen von Barcodes aus PDF-Dokumenten als MemoryStream-Objekte ähnelt dem Lesen aus Bildern. Der Hauptunterschied ist die Methode: BarcodeReader.ReadPdf() behandelt speziell PDF-Dokumente. Das Beispiel verwendet IronPDF, um PDF-Dokumente in MemoryStream-Objekte zu konvertieren.

Für mehrere PDF-Dokumente, fügen Sie alle PDFs zu einem Dokument-Stream zusammen, bevor Sie ihn an BarcodeReader.ReadPdf() übergeben. Dieser Ansatz ist effizienter als jede PDF-Datei einzeln zu bearbeiten und reduziert den Speicherbedarf. Konfigurieren Sie PDF-spezifische Barcode-Leseeinstellungen, um das Lesen Ihrer Dokumente zu optimieren.

Für fortgeschrittene Szenarien können Sie bestimmte Seiten oder PDF-Regionen bearbeiten. IronBarcode ermöglicht das Festlegen von Seitenbereichen und das Ausschneiden von Regionen innerhalb von Seiten, die auf Bereiche ausgerichtet sind, in denen Barcodes erscheinen. Dies verbessert die Verarbeitungsgeschwindigkeit für große Dokumente.

Wenn Sie Streams in der Produktion verwenden, entsorgen Sie MemoryStream-Objekte ordnungsgemäß, um Speicherlecks zu vermeiden. Die using-Anweisung sorgt für automatisches Entsorgen:

using (MemoryStream pdfStream = new MemoryStream(pdfBytes))
{
    var results = BarcodeReader.ReadPdf(pdfStream);
    // Process results
}

Experimentieren Sie und passen Sie die Bibliothek an Ihre spezifischen Bedürfnisse an. Die flexible API von IronBarcode ermöglicht eine umfassende Anpassung des Leseprozesses, von der Anpassung der Erkennungsempfindlichkeit bis zur Angabe der erwarteten Barcodeformate.

Häufig gestellte Fragen

Wie lese ich Barcodes aus Streams, ohne sie vorher auf der Festplatte zu speichern?

IronBarcode ermöglicht es Ihnen, Barcodes direkt aus MemoryStream-Objekten zu lesen, ohne sie auf der Festplatte zu speichern. Übergeben Sie einfach Ihren Stream an die Methode BarcodeReader.Read(). Dieser Ansatz eliminiert den Festplatten-E/A-Overhead und ist ideal für die Verarbeitung von Bildern aus Web-Uploads, Datenbanken oder APIs.

Welche Bildformate unterstützt der Barcodeleser bei der Verarbeitung von Datenströmen?

IronBarcode unterstützt mehrere Bildformate beim Lesen von Streams, darunter JPEG, PNG, GIF, TIFF, BMP und SVG. Diese Flexibilität ermöglicht es Ihnen, Barcode-Bilder aus verschiedenen Quellen ohne Formatkonvertierung zu verarbeiten.

Kann ich mehrere Barcode-Bildströme gleichzeitig verarbeiten?

Ja, IronBarcode unterstützt Async- und Multithreading-Funktionen, so dass Sie mehrere Barcode-Datenströme gleichzeitig verarbeiten können, um maximale Leistung zu erzielen. Dies ist besonders nützlich, wenn Sie große Mengen an Barcode-Lesevorgängen aus dem Speicher verarbeiten.

Welche Vorteile hat die Verwendung von Memory Streams gegenüber dem Lesen von Barcodes auf Dateibasis?

Die Speicherstromverarbeitung mit IronBarcode bietet eine schnellere Leistung durch den Wegfall des Festplatten-E/A-Overheads, eine höhere Sicherheit, da sensible Daten nie den Festplattenspeicher berühren, und eine bessere Kompatibilität mit Cloud-Umgebungen, in denen der Festplattenzugriff begrenzt oder teuer sein kann.

Wie kann ich Barcodes aus PDF-Dokumentenströmen lesen?

IronBarcode kann Barcodes sowohl aus Bild- als auch aus PDF-Dokumentenströmen lesen. Übergeben Sie einfach Ihren PDF-MemoryStream an die Methode BarcodeReader.Read() und IronBarcode extrahiert und dekodiert alle in den PDF-Seiten enthaltenen Barcodes.

Ist es möglich, den Barcode-Leseprozess bei der Arbeit mit Streams zu optimieren?

Ja, IronBarcode bietet anpassbare Barcode-Leseeinstellungen, mit denen Sie den Leseprozess für Ihren speziellen Anwendungsfall optimieren können, unabhängig davon, ob Sie einzelne oder mehrere in Sammlungen gespeicherte Ströme verarbeiten.

How do I manage multiple PDF streams for barcode reading with IronBarcode?

For multiple PDFs, merge them into a single document stream and process with `BarcodeReader.ReadPdf()`. This approach enhances efficiency by reducing processing overhead and memory usage.

What steps are involved in reading a barcode from an image stream using IronBarcode?

First, instantiate a `MemoryStream` for your image data, then call `BarcodeReader.Read()` on the stream. This simple process allows for direct barcode extraction from in-memory data.

How can IronBarcode handle image correction for low-quality images?

IronBarcode provides image correction filters, improving barcode recognition rates for imperfect or low-quality image streams, enhancing overall reading accuracy.

How do I ensure efficient memory usage when processing streams with IronBarcode?

Ensure to dispose of `MemoryStream` objects after use, ideally with a `using` statement to prevent memory leaks. This practice is crucial in production to maintain optimal performance.

Bereit anzufangen?

Nuget Downloads 2,422,100Version: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 BarCode
nuget.org/packages/BarCode/
  1. Rechtsklick auf Referenzen, NuGet-Pakete verwalten
  2. Wählen Sie Durchsuchen und suchen Sie "IronBarcode"
  3. Paket auswählen und installieren
C# PDF DLL
Download DLL

Version: 2026.9

  1. Laden Sie IronBarCode herunter und entpacken Sie es an einem Ort wie ~/Libs in Ihrem Lösungsverzeichnis
  2. Klicken Sie im Visual Studio Solution Explorer mit der rechten Maustaste auf Verweise. Wählen Sie Durchsuchen und dann "IronBarcode.dll"

Lizenzen ab $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
AWS-Logo
Booking Badge

Von Millionen von Ingenieur*innen weltweit vertraut

Azure (WebApps, Funktionen v3)
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
Azure (WebApps, Funktionen v3)
Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.