IRONSOFTWAREHOME
KORZYSTANIE Z IRONBARCODE

Samouczek komponentu .NET Barcode z użyciem IronBarcode

Curtis Chau
Curtis Chau
Updated: 20 czerwca 2026

Komponent .NET do obsługi kodów kreskowych to biblioteka kodu zarządzanego, która pozwala generować i odczytywać kody kreskowe w aplikacjach C# za pomocą zaledwie kilku wierszy kodu. IronBarcode obsługuje wszystkie główne symbole — Code 128, QR, Data Matrix, EAN, UPC i inne — i działa na systemach Windows, Linux oraz macOS bez dodatkowych zależności środowiskowych.

Zainstaluj za pomocą NuGet i zacznij generować kody kreskowe w ciągu kilku minut:

PM > Install-Package BarCode

Czym jest komponent BarCode .NET?

Komponent .NET do obsługi kodów kreskowych to biblioteka oprogramowania w postaci pakietu NuGet, która zapewnia funkcje generowania i odczytu kodów kreskowych za pośrednictwem przejrzystego interfejsu API. W przeciwieństwie do czcionek BARCODE, które wymagają ręcznego obliczania sum kontrolnych i stosowania skomplikowanych reguł formatowania, dedykowany komponent obsługuje całą logikę kodowania wewnętrznie.

Biblioteka IronBarcode udostępnia dwa główne punkty wejścia:

  • BarcodeWriter -- tworzy obrazy kodów kreskowych, pliki PDF i HTML z danych tekstowych lub numerycznych
  • BarcodeReader -- skanuje obrazy, pliki PDF i wieloramkowe pliki TIFF w celu wyodrębnienia wartości kodów kreskowych

Ta dwukierunkowa konstrukcja oznacza, że w tej samej bibliotece można zarówno drukować BARCODES na etykietach, jak i skanować je z dokumentów, co jest niezbędne do zarządzania zapasami, śledzenia dokumentów, integracji z Crystal Reports oraz automatyzacji przepływu danych.

Obsługiwane symbole obejmują:

  • Kod liniowy 1D: Code 128, Code 39, Code 93, ITF-14, EAN-13, EAN-8, UPC-A, UPC-E
  • Macierz 2D: QR, Data Matrix, PDF417, Aztec
  • Warianty GS1: GS1-128, GS1 DataBar

Systemy produkcyjne zazwyczaj wykorzystują kod 128 do śledzenia produktów, ponieważ umożliwia on wydajne kodowanie danych alfanumerycznych. Aplikacje medyczne często wykorzystują kod Data Matrix do etykietowania leków, ponieważ dobrze się drukuje nawet w bardzo małych rozmiarach. Systemy kasowe w handlu detalicznym skanują barcodes EAN-13 i UPC-A przy kasie. Wybór odpowiedniej symboliki dla danego zastosowania jest jedną z pierwszych decyzji, jakie należy podjąć podczas integracji funkcji BarCode.

Jak zainstalować IronBarcode w projekcie .NET?

Instalacja IronBarcode zajmuje mniej niż dwie minuty przy użyciu menedżera pakietów NuGet w Visual Studio lub .NET CLI.

Konsola menedżera pakietów (Visual Studio):

PM > Install-Package BarCode

.NET CLI:

dotnet add package BarCode

Jak zintegrować komponent .NET dla kodów kreskowych w C#: Rysunek 3 - Instalacja

Po zainstalowaniu pakietu dodaj przestrzeń nazw na początku każdego pliku, który korzysta z funkcji BARCODE:

using IronBarCode;

IronBarcode jest przeznaczony dla platform .NET Framework 4.6.2 i nowszych, .NET Core 3.1 i nowszych oraz .NET 5 do .NET 10. Działa na systemach Windows, Linux i macOS, więc ten sam kod działa w kontenerach hostowanych w chmurze, na serwerach lokalnych i stacjach roboczych programistów bez konieczności konfiguracji specyficznej dla danej platformy.

W przypadku aplikacji .NET Core nie jest wymagana rejestracja oprogramowania pośredniczącego. API wywołuje się bezpośrednio z kontrolerów, usług działających w tle lub stron Razor Pages. Aplikacje Windows Forms i WPF uzyskują dostęp w ten sam sposób — wystarczy dodać przestrzeń nazw i zacząć wywoływać metody.

Jak zintegrować komponent .NET dla kodów kreskowych w C#: Rysunek 4 - Generowanie kodów kreskowych z obsługą dla różnych platform

Szczegółowe instrukcje instalacji, w tym konfiguracja kanału NuGet w trybie offline i ustawienia proxy, są dostępne w przewodniku IronBarcode "Pierwsze kroki".

Jak generować obraz kodu kreskowego w C#?

Generowanie kodu kreskowego za pomocą IronBarcode wymaga trzech kroków: wyboru kodowania, ustawienia wartości i zapisania wyniku. Poniższy przykład tworzy BARCODE Code 128 i zapisuje go zarówno jako obraz PNG, jak i dokument PDF:

using IronBarCode;

// Create a Code 128 barcode encoding a product identifier
var barcode = BarcodeWriter.CreateBarcode("PRD-12345-2024", BarcodeEncoding.Code128);

// Set the output dimensions in pixels
barcode.ResizeTo(400, 100);

// Add human-readable text beneath the bars
barcode.AddBarcodeValueTextBelowBarcode();

// Export to PNG for screen display and label printing
barcode.SaveAsImage("product-barcode.png");

// Export to PDF for document embedding
barcode.SaveAsPdf("product-barcode.pdf");

Metoda ResizeTo() ustala dokładne wymiary pikseli, co ma znaczenie, gdy drukuje się etykiety w określonym DPI. Wywołanie AddBarcodeValueTextBelowBarcode() dodaje pod belkami tekst zrozumiały dla ludzi, co ułatwia ręczną weryfikację w magazynach i obiektach handlowych.

Formaty wyjściowe BarCode

Jak zintegrować komponent .NET dla kodów kreskowych w C#: Rysunek 5 - Wyjście PNG

Jak zintegrować komponent .NET dla kodów kreskowych w C#: Rysunek 6 - Wyjście PDF

IronBarcode eksportuje do formatów PNG, JPEG, GIF, TIFF, BMP, PDF, HTML oraz ciągów znaków base64. Format base64 jest szczególnie przydatny do osadzania BARCODE'ów w odpowiedziach API, które frontend renderuje dynamicznie bez zapisywania plików na dysku.

Jak wygenerować kod QR w C#?

Dla kodów QR, IronBarcode udostępnia klasę QRCodeWriter z wbudowaną obsługą poziomów korekcji błędów oraz kontroli rozmiaru modułu:

using IronBarCode;

// Generate a QR code from a URL with 500px dimensions
var qrCode = QRCodeWriter.CreateQrCode("https://example.com/product/12345", 500);

// Save the QR code to a PNG file
qrCode.SaveAsImage("product-qr.png");

Kody QR mogą kodować adresy URL, zwykły tekst, dane kontaktowe vCard, dane logowania do sieci Wi-Fi oraz dowolne sekwencje bajtów. Strona z przykładami generowania BarCodes obejmuje dodatkowe scenariusze kodowania, w tym Data Matrix i PDF417.

Jak odczytywać BarCodes z obrazów?

Odczytywanie BarCode'ów z obrazu jest tak proste, jak ich zapisywanie. Metoda BarcodeReader.Read() akceptuje ścieżkę do pliku, Stream, Bitmap lub IronSoftware.Drawing.AnyBitmap i zwraca kolekcję BarcodeResults:

using IronBarCode;

// Read all barcodes from a scanned document image
BarcodeResults results = BarcodeReader.Read("scanned-document.png");

// Iterate over every detected barcode
foreach (BarcodeResult result in results)
{
    string value = result.Value;
    BarcodeEncoding type = result.BarcodeType;
    Console.WriteLine($"Detected {type}: {value}");
}

Czytnik automatycznie przetwarza obrazy, aby skorygować typowe problemy związane ze skanowaniem: obrót, przekrzywienie, szumy, niski kontrast i zniekształcenia perspektywiczne. Oznacza to, że można przekazać surowe dane wyjściowe skanera bezpośrednio, bez konieczności ich samodzielnego przetwarzania.

Skanowanie z prawdziwego dokumentu

Jak zintegrować komponent .NET dla kodów kreskowych w C#: Rysunek 7 - Kod kreskowy Code128 gotowy do skanowania

Wynik czytania

Jak zintegrować komponent .NET dla kodów kreskowych w C#: Rysunek 8 - Wyjście kodu kreskowego

Jak skonfigurować opcje odczytu kodów kreskowych?

Dla przypadków o dużym natężeniu lub trudnych scenariuszy skanowania, BarcodeReaderOptions daje dokładną kontrolę nad algorytmem odczytu:

using IronBarCode;

var options = new BarcodeReaderOptions
{
    // Balance accuracy and processing time
    Speed = ReadingSpeed.Balanced,

    // Detect multiple barcodes in one pass
    ExpectMultipleBarcodes = true,

    // Limit the search to 1D formats for faster processing
    ExpectBarcodeTypes = BarcodeEncoding.AllOneDimensional
};

// Read from a multi-page PDF warehouse inventory report
var results = BarcodeReader.Read("warehouse-inventory.pdf", options);

Ustawienie ExpectBarcodeTypes, aby dopasować formaty, których faktycznie oczekujesz, poprawia przepustowość, ponieważ czytnik pomija wzorce, które nie mogą pasować. Właściwość Speed ma zakres od Faster (najlepsza dla czystych, wysokiej jakości obrazów) do ExtremeDetail (najlepsza dla uszkodzonych lub niskiej rozdzielczości źródeł). Dokumentacja czytania kodów kreskowych obejmuje dodatkowe opcje, w tym wielowątkowość i skanowanie w ramach regionu zainteresowania.

Jak dostosować wygląd kodu kreskowego?

IronBarcode pozwala kontrolować każdy wizualny aspekt wygenerowanego kodu kreskowego przed zapisaniem. Można ustawić kolory, czcionki, marginesy i teksty adnotacji programowo. Jest to przydatne przy generowaniu kodów kreskowych dla etykiet markowych lub branż regulowanych, w których układ etykiety podlega ścisłym specyfikacjom.

API stosuje wzór w stylu płynnym: tworzenie kodu kreskowego, wywołania metod stylizacji, a następnie zapisywanie. Wszystkie właściwości stylów wpływają na wyjście natychmiastowo i nie wymagają oddzielnego etapu renderowania. Zobacz przykłady stylizacji i adnotacji dla pełnej listy dostępnych właściwości.

Jak obsługiwać kody kreskowe w dokumentach PDF?

IronBarcode czyta kody kreskowe osadzone w plikach PDF tak samo jak czyta pliki obrazów. Przekaż ścieżkę do pliku PDF do BarcodeReader.Read(), a biblioteka automatycznie wyodrębni kody kreskowe z każdej strony. Jest to cenne dla przepływów pracy w dziale zobowiązań, gdzie faktury PDF zawierają kody kreskowe GS1-128, oraz dla systemów logistycznych, gdzie manifesty wysyłki są rozprowadzane jako załączniki PDF.

Możesz także pisać kody kreskowe bezpośrednio na stronach PDF, używając IronBarcode wraz z IronPDF do generowania dokumentów. Częstym wzorcem jest generowanie etykiety wysyłkowej PDF, która zawiera zarówno blok adresowy czytelny dla człowieka, jak i skanowalny kod kreskowy Code 128 dla numeru śledzenia.

Dla dalszych informacji o przepływach pracy związanych z kodami kreskowymi w PDF, sekcja samouczków IronBarcode dostarcza kompleksowych przykładów obejmujących przetwarzanie faktur, drukowanie etykiet seryjnych i archiwizację dokumentów.

Jak zintegrować kody kreskowe z interfejsami API ASP.NET Core?

Zwracanie obrazu kodu kreskowego z punktu końcowego kontrolera ASP.NET Core jest częstym wymaganiem dla portali internetowych wyświetlających dynamiczne etykiety. Wyjście base64 IronBarcode czyni to prostym:

using IronBarCode;

// In an ASP.NET Core controller action
public IActionResult GetBarcodeImage(string productId)
{
    var barcode = BarcodeWriter.CreateBarcode(productId, BarcodeEncoding.Code128);
    barcode.ResizeTo(400, 100);
    barcode.AddBarcodeValueTextBelowBarcode();

    // Return the barcode as a PNG image response
    byte[] imageBytes = barcode.ToJpegBinaryData();
    return File(imageBytes, "image/jpeg");
}

To podejście działa z każdym frameworkiem frontendowym. Przeglądarka otrzymuje standardową odpowiedź obrazową i wyświetla ją w znaczniku <img>. Dla punktów końcowych o dużym ruchu, generuj kody kreskowe raz i pamiętaj tablicę bajtów, ponieważ ten sam identyfikator produktu zawsze generuje ten sam obraz kodu kreskowego.

Dokumentacja dokumentacja API IronBarcode opisuje wszystkie dostępne metody, w tym strumieniowe wyjście, które unika alokowania dużych tablic bajtów dla bardzo wysokiej rozdzielczości kodów kreskowych.

Jak IronBarcode obsługuje walidację kodów kreskowych i korekcję błędów?

Standardy kodów kreskowych definiują ścisłe zasady kodowania i wymagania dotyczące sum kontrolnych. Code 128 używa ważonej sumy kontrolnej modulo-103. EAN-13 używa modulo-10. Kody QR zawierają korekcję błędów typu Reed-Solomon, która umożliwia częściowe odzyskiwanie danych nawet gdy do 30% kodu kreskowego jest zasłonięte lub uszkodzone.

IronBarcode automatycznie egzekwuje te zasady. Kiedy wywołujesz BarcodeWriter.CreateBarcode(), biblioteka sprawdza, czy dane pasują do zestawu znaków i ograniczeń długości symbologii, a następnie oblicza i dodaje poprawny sumę kontrolną bez dodatkowych kroków z twojego kodu. To zapobiega generowaniu nieprawidłowych kodów kreskowych, które skanery odrzucą.

Po stronie odczytu biblioteka stosuje korekcję błędów podczas dekodowania, co oznacza, że często może odzyskać poprawną wartość z kodu kreskowego, który jest częściowo rozerwany, rozmazany lub wydrukowany w niskiej rozdzielczości. To zachowanie jest szczególnie ważne dla zgodności ze standardami kodów kreskowych GS1 w handlu detalicznym i logistyce.

Dla głębszego zrozumienia, jak działa korekcja błędów kodów kreskowych na poziomie specyfikacji, dokumentacja standardów kodów kreskowych ISO/IEC dostarcza autorytatywnego źródła technicznego.

Jakie są typowe scenariusze integracji kodów kreskowych?

Typowe scenariusze integracji kodów kreskowych i zalecane funkcje IronBarcode
ScenariuszSymbologiaKluczowa funkcja IronBarcode
Punkt sprzedaży detalicznejEAN-13, UPC-ABarcodeEncoding.EAN13, PDF export
Inwentaryzacja magazynowaCode 128, ITF-14ExpectMultipleBarcodes = true
Etykietowanie w ochronie zdrowiaData Matrix, GS1-128Druk niskorozmiarowy, eksport o wysokim DPI
Śledzenie dokumentówPDF417, Code 39Odczyt PDF, obsługa wielu stron
Mobilne wyszukiwanie produktówKod QRQRCodeWriter.CreateQrCode()
Etykiety wysyłkoweCode 128, GS1-128PDF wyjście wielkości etykiety, tekst adnotacji

Każdy scenariusz korzysta z różnych wyborów konfiguracji. Galeria przykładów IronBarcode dostarcza kod do uruchomienia dla wszystkich powyższych scenariuszy.

Jakie są Twoje kolejne kroki?

Integracja komponentu .NET do kodów kreskowych zmienia to, co w przeciwnym razie byłoby tygodniowym wysiłkiem na własne potrzeby w popołudnie konfiguracji. IronBarcode obsługuje zasady kodowania, sumy kontrolne, przetwarzanie obrazu i korekcję błędów, dzięki czemu twój zespół może skupić się na logice biznesowej otaczającej przepływy pracy z kodami kreskowymi, a nie na mechanice samych kodów kreskowych.

Aby kontynuować:

  1. Zainstaluj pakiet: dotnet add package BarCode lub Install-Package BarCode w Konsoli Menedżera Pakietów
  2. Wypróbuj szybki start: Przykład szybkiego startu przechodzi przez generowanie i odczytywanie poniżej 20 linii kodu
  3. Poznaj symbologie: Referencje obsługiwanych typów kodów kreskowych wymieniają wszystkie formaty kodowania z wskazówkami dotyczącymi użycia
  4. Sprawdź ceny: Opcje licencji IronBarcode obejmują przypadki użycia programisty indywidualnego, zespołu i dystrybucji OEM
  5. Rozpocznij darmowy okres próbny: Pobierz 30-dniową darmową licencję próbną w celu oceny pełnego zestawu funkcji w twojej własnej aplikacji

W przypadku pytań o licencjonowanie korporacyjne, wdrożenia o dużej objętości lub wyzwania związane z integracją techniczną, zespół wsparcia IronBarcode jest dostępny, aby pomóc.

Zewnętrzne odniesienia do standardów i specyfikacji kodów kreskowych:

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podręczników.

...
Czytaj więcej

Powiązane artykuły

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Your trial license will be sent to your email address

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Zarezerwuj swoje darmowe Demo na żywo
Booking Badge

Zaufane przez miliony inżynierów na całym świecie

Logotypy klientów Iron Software
Otrzymaj swoje Konsultacja Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta