Jak generować obrazy kodów kreskowych w C#

How to Generate Barcode Images in C# .NET Applications

This article was translated from English: Does it need improvement?
Translated
View the article in English

Potrzebujesz szybko wygenerować profesjonalne obrazy BarCode w swoich aplikacjach .NET? Ten samouczek pokazuje dokładnie, jak tworzyć, dostosowywać i eksportować barcodes za pomocą IronBarcode — od prostych implementacji jednowierszowych po zaawansowane techniki stylizacji, które zapewniają pełną kontrolę nad wyglądem barcoda.

Szybki start: Natychmiastowe tworzenie i zapisywanie obrazu BarCode

Dzięki IronBarcode możesz wygenerować i wyeksportować obraz BarCODE za pomocą jednego prostego wywołania. Użyj metody CreateBarcode w swoim tekście, wybierz format i rozmiar, a następnie wywołaj SaveAsPng — nie jest wymagana żadna skomplikowana konfiguracja.

  1. Install IronBarcode with NuGet Package Manager

    PM > Install-Package BarCode
  2. Skopiuj i uruchom ten fragment kodu.

    IronBarCode.BarcodeWriter.CreateBarcode("Hello123", BarcodeWriterEncoding.Co/de128, 200, 100).SaveAsPng("barcode.png");
  3. Wdrożenie do testowania w środowisku produkcyjnym

    Rozpocznij używanie IronBarcode w swoim projekcie już dziś z darmową wersją próbną

    arrow pointer

How Do I Install a Barcode Generator Library in C#?

Instalacja IronBarcode zajmuje zaledwie kilka sekund przy użyciu menedżera pakietów NuGet. Można je zainstalować bezpośrednio za pomocą konsoli menedżera pakietów lub ręcznie pobrać plik DLL.

Install-Package BarCode
IronBarcode upraszcza generowanie kodów kreskowych w aplikacjach .NET dzięki zaawansowanym funkcjom i łatwym w użyciu interfejsom API IronBarcode zapewnia kompleksowe możliwości generowania kodów kreskowych dla programistów .NET

How Can I Generate a Simple Barcode Using C#?

Stworzenie pierwszego kodu BarCode wymaga zaledwie dwóch wierszy kodu. Poniższy przykład pokazuje generowanie standardowego BARCODE'a Code128 i zapisywanie go jako pliku graficznego.

using IronBarCode;

// Create a barcode with your desired content and encoding type
GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode", BarcodeWriterEncoding.Co/de128);

// Save the barcode as a PNG image file
myBarcode.SaveAsPng("myBarcode.png");

// Optional: Open the generated image in your default viewer
System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo("myBarcode.png") { UseShellExecute = true });
using IronBarCode;

// Create a barcode with your desired content and encoding type
GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode", BarcodeWriterEncoding.Co/de128);

// Save the barcode as a PNG image file
myBarcode.SaveAsPng("myBarcode.png");

// Optional: Open the generated image in your default viewer
System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo("myBarcode.png") { UseShellExecute = true });
Imports IronBarCode
Imports System.Diagnostics

' Create a barcode with your desired content and encoding type
Dim myBarcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode", BarcodeWriterEncoding.Code128)

' Save the barcode as a PNG image file
myBarcode.SaveAsPng("myBarcode.png")

' Optional: Open the generated image in your default viewer
Process.Start(New ProcessStartInfo("myBarcode.png") With {.UseShellExecute = True})
$vbLabelText   $csharpLabel

Metoda BarcodeWriter.CreateBarcode() stanowi punkt wyjścia do generowania BARCODE-ów. Przyjmuje dwa parametry: dane, które chcesz zakodować, oraz format BARCODE z wyliczenia BarcodeWriterEncoding. IronBarcode obsługuje wszystkie główne formaty kodów kreskowych, w tym Code128, Code39, EAN13, UPCA, PDF417, DataMatrix oraz QRCode.

Po wygenerowaniu obiekt GeneratedBarcode zapewnia wiele opcji eksportu. Można go zapisać w różnych formatach graficznych (PNG, JPEG, GIF, TIFF), wyeksportować do formatu PDF, a nawet pobrać jako System.Drawing.Bitmap w celu dalszego przetwarzania w aplikacji.

Przykład kodu kreskowego Code128 wygenerowanego przy użyciu biblioteki IronBarcode w języku C# *A Code128 barcode generated with IronBarcode displaying a URL*

Czy mogę dostosować wygląd generowanych kodów kreskowych BarCode?

IronBarcode oferuje szerokie możliwości dostosowywania, które wykraczają daleko poza podstawowe generowanie kodów kreskowych. Możesz dodawać adnotacje, dostosowywać kolory, ustawiać marginesy i kontrolować każdy aspekt wyglądu BarCode'a.

using IronBarCode;
using IronSoftware.Drawing;

// Create a QR code with advanced styling options
GeneratedBarcode myBarCode = BarcodeWriter.CreateBarcode(
    "https://ironsoftware.com/csharp/barcode", 
    BarcodeWriterEncoding.QRCode
);

// Add descriptive text above the barcode
myBarCode.AddAnnotationTextAboveBarcode("Product URL:");

// Display the encoded value below the barcode
myBarCode.AddBarcodeValueTextBelowBarcode();

// Set consistent margins around the barcode
myBarCode.SetMargins(100);

// Customize the barcode color (purple in this example)
myBarCode.ChangeBarCodeColor(Color.Purple);

// Export as an HTML file for web integration
myBarCode.SaveAsHtmlFile("MyBarCode.html");
using IronBarCode;
using IronSoftware.Drawing;

// Create a QR code with advanced styling options
GeneratedBarcode myBarCode = BarcodeWriter.CreateBarcode(
    "https://ironsoftware.com/csharp/barcode", 
    BarcodeWriterEncoding.QRCode
);

// Add descriptive text above the barcode
myBarCode.AddAnnotationTextAboveBarcode("Product URL:");

// Display the encoded value below the barcode
myBarCode.AddBarcodeValueTextBelowBarcode();

// Set consistent margins around the barcode
myBarCode.SetMargins(100);

// Customize the barcode color (purple in this example)
myBarCode.ChangeBarCodeColor(Color.Purple);

// Export as an HTML file for web integration
myBarCode.SaveAsHtmlFile("MyBarCode.html");
Imports IronBarCode
Imports IronSoftware.Drawing

' Create a QR code with advanced styling options
Private myBarCode As GeneratedBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode", BarcodeWriterEncoding.QRCode)

' Add descriptive text above the barcode
myBarCode.AddAnnotationTextAboveBarcode("Product URL:")

' Display the encoded value below the barcode
myBarCode.AddBarcodeValueTextBelowBarcode()

' Set consistent margins around the barcode
myBarCode.SetMargins(100)

' Customize the barcode color (purple in this example)
myBarCode.ChangeBarCodeColor(Color.Purple)

' Export as an HTML file for web integration
myBarCode.SaveAsHtmlFile("MyBarCode.html")
$vbLabelText   $csharpLabel

Klasa GeneratedBarcode zapewnia bogaty zestaw metod umożliwiających dostosowanie:

  • Adnotacje: Użyj AddAnnotationTextAboveBarcode() i AddAnnotationTextBelowBarcode(), aby dodać niestandardowe etykiety lub instrukcje wokół BARCODE
  • Wyświetlanie wartości: Metoda AddBarcodeValueTextBelowBarcode() automatycznie wyświetla zakodowane dane w formacie czytelnym dla człowieka
  • Odstępy: Kontroluj spacje za pomocą SetMargins(), aby zapewnić prawidłowe skanowanie i atrakcyjny wygląd
  • Kolory: Zmień kolory pierwszego planu i tła za pomocą ChangeBarCodeColor() i ChangeBackgroundColor()
  • Opcje eksportu: Zapisywanie jako pliki graficzne, pliki PDF lub samodzielne dokumenty HTML
Customized purple QR code with annotations generated using IronBarcode styling features *Stylizowany QR kod z niestandardowym kolorem i tekstem adnotacji*

Aby zapoznać się ze szczegółowymi opcjami dostosowywania, przejrzyj dokumentację klasy GeneratedBarcode, która obejmuje wszystkie dostępne metody i właściwości stylizacji.

Jak utworzyć i wyeksportować BARCODE za pomocą jednej linii kodu?

IronBarcode wykorzystuje wzorzec projektowy płynnego API, który umożliwia łańcuchowanie metod w celu uzyskania bardziej zwięzłego i czytelnego kodu. Takie podejście jest szczególnie przydatne w przypadku stosowania wielu transformacji do BarCoda.

using IronBarCode;
using IronSoftware.Drawing;

// Generate, style, and convert a barcode in a single statement
string value = "https://ironsoftware.com/csharp/barcode";

// Create PDF417 barcode with chained operations
AnyBitmap barcodeBitmap = BarcodeWriter
    .CreateBarcode(value, BarcodeWriterEncoding.PDF417)  // Create PDF417 barcode
    .ResizeTo(300, 200)                                  // Set specific dimensions
    .SetMargins(10)                                      // Add 10px margins
    .ToBitmap();                                         // Convert to bitmap

// Convert to System.Drawing.Bitmap for legacy compatibility
System.Drawing.Bitmap legacyBitmap = barcodeBitmap;
using IronBarCode;
using IronSoftware.Drawing;

// Generate, style, and convert a barcode in a single statement
string value = "https://ironsoftware.com/csharp/barcode";

// Create PDF417 barcode with chained operations
AnyBitmap barcodeBitmap = BarcodeWriter
    .CreateBarcode(value, BarcodeWriterEncoding.PDF417)  // Create PDF417 barcode
    .ResizeTo(300, 200)                                  // Set specific dimensions
    .SetMargins(10)                                      // Add 10px margins
    .ToBitmap();                                         // Convert to bitmap

// Convert to System.Drawing.Bitmap for legacy compatibility
System.Drawing.Bitmap legacyBitmap = barcodeBitmap;
Imports IronBarCode
Imports IronSoftware.Drawing

' Generate, style, and convert a barcode in a single statement
Private value As String = "https://ironsoftware.com/csharp/barcode"

' Create PDF417 barcode with chained operations
Private barcodeBitmap As AnyBitmap = BarcodeWriter.CreateBarcode(value, BarcodeWriterEncoding.PDF417).ResizeTo(300, 200).SetMargins(10).ToBitmap() ' Convert to bitmap

' Convert to System.Drawing.Bitmap for legacy compatibility
Private legacyBitmap As System.Drawing.Bitmap = barcodeBitmap
$vbLabelText   $csharpLabel

Wzorzec płynnego API oferuje kilka zalet:

  • Czytelność: Łączenie operacji w logiczną sekwencję, która brzmi jak naturalny język
  • Efektywność: Ograniczanie deklaracji zmiennych i etapów pośrednich
  • Elastyczność: łatwe dodawanie lub usuwanie operacji bez konieczności przebudowywania kodu

Typowe operacje płynnego przetwarzania obejmują:

  • ResizeTo(): Kontrola dokładnych wymiarów BARCODE
  • SetMargins(): Dodaj spójne odstępy
  • ChangeBarCodeColor(): Zmodyfikuj wygląd
  • AddAnnotationTextAboveBarcode(): Dołącz tekst opisowy
  • ToBitmap(), SaveAsPng(), SaveAsPdf(): Eksport w różnych formatach
BARCODE PDF417 utworzony przy użyciu płynnego interfejsu API IronBarcode z niestandardowymi wymiarami *A PDF417 barcode generated using fluent method chaining*

Jakie formaty BarCodes obsługuje IronBarcode?

IronBarcode obsługuje kompleksowe generowanie formatów kodów kreskowych poprzez wyliczenie BarcodeWriterEncoding. Obsługiwane formaty to:

BarCodes 1D: Code128, Code39, Code93, Codabar, ITF, MSI, Plessey, UPCA, UPCE, EAN8, EAN13
BarCodes 2D: QRCode, DataMatrix, PDF417, Aztec, MaxiCode
Formaty specjalistyczne: IntelligentMail, DataBar, DataBarExpanded oraz różne standardy GS1

Każdy format ma specyficzne cechy i zastosowania. Na przykład QRCode doskonale nadaje się do przechowywania adresów URL i dużych ilości danych, podczas gdy EAN13 jest standardem w przypadku produktów detalicznych. Dowiedz się więcej o wyborze odpowiedniego formatu BarCode dla Twojej aplikacji.

Jak mogę sprawdzić, czy wygenerowany BarCode jest czytelny?

Zapewnienie jakości ma kluczowe znaczenie dla wdrożenia kodów kreskowych BarCode. IronBarcode zawiera wbudowaną funkcję weryfikacji, która gwarantuje, że wygenerowane kody kreskowe będą nadal możliwe do zeskanowania:

// Generate and verify a barcode
GeneratedBarcode myBarcode = BarcodeWriter
    .CreateBarcode("TEST123", BarcodeWriterEncoding.Co/de128)
    .ResizeTo(200, 100)
    .ChangeBarCodeColor(Color.DarkBlue);

// Verify the barcode is still readable after modifications
bool isReadable = myBarcode.Verify();
Console.WriteLine($"Barcode verification: {(isReadable ? "PASS" : "FAIL")}");
// Generate and verify a barcode
GeneratedBarcode myBarcode = BarcodeWriter
    .CreateBarcode("TEST123", BarcodeWriterEncoding.Co/de128)
    .ResizeTo(200, 100)
    .ChangeBarCodeColor(Color.DarkBlue);

// Verify the barcode is still readable after modifications
bool isReadable = myBarcode.Verify();
Console.WriteLine($"Barcode verification: {(isReadable ? "PASS" : "FAIL")}");
Imports System.Drawing

' Generate and verify a barcode
Dim myBarcode As GeneratedBarcode = BarcodeWriter _
    .CreateBarcode("TEST123", BarcodeWriterEncoding.Code128) _
    .ResizeTo(200, 100) _
    .ChangeBarCodeColor(Color.DarkBlue)

' Verify the barcode is still readable after modifications
Dim isReadable As Boolean = myBarcode.Verify()
Console.WriteLine($"Barcode verification: {(If(isReadable, "PASS", "FAIL"))}")
$vbLabelText   $csharpLabel

Metoda Verify() sprawdza, czy BarCode pozostaje czytelny dla maszyn po zastosowaniu przekształceń, takich jak zmiana rozmiaru lub koloru. Jest to szczególnie ważne w przypadku stosowania niestandardowych kolorów lub bardzo małych rozmiarów.

Gdzie mogę znaleźć więcej przykładów generowania kodów kreskowych?

Aby rozszerzyć możliwości generowania kodów kreskowych, zapoznaj się z poniższymi dodatkowymi zasobami:

Kod źródłowy i przykłady

Pobierz pełny kod źródłowy do tego samouczka:

Tematy zaawansowane

Dokumentacja API

Chcesz generować profesjonalne BarCodes w swojej aplikacji?

IronBarcode sprawia, że generowanie kodów kreskowych jest proste, zapewniając jednocześnie elastyczność niezbędną w profesjonalnych zastosowaniach. Niezależnie od tego, czy potrzebujesz prostych kodów produktów, czy złożonych BarCODE-ów 2D z niestandardowym stylem, IronBarcode obsługuje to wszystko przy minimalnym nakładzie kodu.

Pobierz IronBarcode już dziś i zacznij generować kody kreskowe w ciągu kilku minut. Potrzebujesz pomocy w wyborze odpowiedniej licencji? Sprawdź nasze opcje licencyjne lub poproś o bezpłatny klucz próbny, aby przetestować IronBarcode w swoim środowisku produkcyjnym.

Często Zadawane Pytania

Jak mogę stworzyć obraz kodu kreskowego w C#?

Aby utworzyć obraz kodu kreskowego w C#, możesz użyć metody BarcodeWriter.CreateBarcode() w IronBarcode, która pozwala określić dane i format kodu kreskowego, a następnie zapisać obraz w formatach takich jak PNG czy JPEG za pomocą metod SaveAsPng().

Jakie są kroki do zainstalowania IronBarcode w projekcie .NET?

Możesz zainstalować IronBarcode w swoim projekcie .NET, korzystając z Menedżera Pakietów NuGet w Visual Studio. Alternatywnie możesz pobrać DLL z witryny IronBarcode i dodać go do odwołań projektu.

Jak mogę eksportować kod kreskowy jako PDF w C#?

IronBarcode umożliwia eksportowanie kodów kreskowych jako PDF za pomocą metody SaveAsPdf() z klasy GeneratedBarcode, oferując prosty sposób na zapisanie kodów kreskowych w formacie PDF.

Jakie opcje dostosowywania są dostępne dla kodów kreskowych w C#?

IronBarcode oferuje rozbudowane opcje dostosowywania, takie jak zmiana kolorów kodu kreskowego za pomocą ChangeBarCodeColor(), dodawanie adnotacji tekstowych z AddAnnotationTextAboveBarcode() oraz ustawianie marginesów funkcją SetMargins().

Jak mogę szybko stworzyć i stylizować kod kreskowy w jednej linii kodu?

Używając Fluent API IronBarcode, możesz tworzyć i stylizować kod kreskowy w jednej linii, wykorzystując łańcuch metod: BarcodeWriter.CreateBarcode(data, encoding).ResizeTo(300, 200).SetMargins(10).SaveAsPng(path).

Jak upewnić się, że mój kod kreskowy jest skanowalny po modyfikacjach?

Aby zweryfikować skanowalność kodu kreskowego po stylizacji czy zmianie rozmiaru, użyj metody Verify() na obiekcie GeneratedBarcode, aby sprawdzić jego czytelność przez maszyny.

Czy mogę generować kody QR z logami w C#?

Tak, IronBarcode obsługuje generowanie kodów QR z osadzonymi logotypami, używając klasy QRCodeWriter, która zawiera funkcje do wstawiania logo i ulepszonych poziomów korekcji błędów.

Jaki jest proces efektywnego generowania wielu kodów kreskowych w C#?

Możesz skutecznie generować wiele kodów kreskowych w C# przy użyciu IronBarcode, który obsługuje przetwarzanie partii i pozwala na zastosowanie pętli czy przetwarzania równoległego do obsługi wysokowydajnego generowania kodów kreskowych.

Jakie formaty plików mogę używać do eksportowania kodów kreskowych w C#?

IronBarcode obsługuje eksport kodów kreskowych w różnych formatach, w tym PNG, JPEG, GIF, TIFF, BMP, PDF i HTML, oferując elastyczność dla różnych potrzeb aplikacji.

Jak mogę dodać tekst zrozumiały dla człowieka pod kodem kreskowym w C#?

Aby dodać tekst zrozumiały dla człowieka pod kodem kreskowym w C#, użyj metody AddBarcodeValueTextBelowBarcode(), która automatycznie wyświetla zakodowaną wartość w formacie tekstowym pod obrazem kodu kreskowego.

Jacob Mellor, Dyrektor Technologiczny @ Team Iron
Dyrektor ds. technologii

Jacob Mellor jest Chief Technology Officer w Iron Software i wizjonerskim inżynierem, pionierem technologii C# PDF. Jako pierwotny deweloper głównej bazy kodowej Iron Software, kształtuje architekturę produktów firmy od jej początku, przekształcając ją wspólnie z CEO Cameron Rimington w firmę liczą...

Czytaj więcej
Gotowy, aby rozpocząć?
Nuget Pliki do pobrania 2,240,258 | Wersja: 2026.5 just released
Still Scrolling Icon

Wciąż przewijasz?

Czy chcesz szybko dowodu? PM > Install-Package BarCode
uruchom przykład zobacz, jak twoje ciągi zamieniają się w kody kreskowe.