Jak tworzyć obrazy kodów kreskowych w języku C# za pomocą IronBarcode
IronBarcode umożliwia programistom .NET generowanie obrazów kodów kreskowych i kodów QR w języku C# za pomocą jednej linii kodu, obsługując wiele formatów i typów obrazów. Twórz systemy zarządzania zapasami, aplikacje detaliczne lub rozwiązania do przetwarzania dokumentów dzięki solidnemu API, które tworzy kody kreskowe o profesjonalnej jakości, zapewniające niezawodne skanowanie we wszystkich głównych czytnikach.
Szybki start: Utwórz i zapisz BarCode Code128 w jednej linii
Użyj jednowierszowego API IronBarcode, aby utworzyć kod kreskowy Code128 na podstawie ciągu znaków i zapisać go jako obraz PNG. Zacznij od razu — dostarcz dane, wybierz kodowanie i rozmiar, a następnie zapisz plik graficzny.
-
Install IronBarcode with NuGet Package Manager
PM > Install-Package BarCode -
Skopiuj i uruchom ten fragment kodu.
IronBarCode.BarcodeWriter.CreateBarcode("Sample123", BarcodeEncoding.Code128, 250, 100).SaveAsPng("Barcode.png"); -
Wdrożenie do testowania w środowisku produkcyjnym
Rozpocznij używanie IronBarcode w swoim projekcie już dziś z darmową wersją próbną
Minimalny proces (5 kroków)
- Pobierz bibliotekę IronBarcode w języku C#
- Generuj kody BARCODE i zapisuj je jako pliki graficzne
- Generuj kody QR i zapisuj je jako pliki graficzne
Jak wygenerować kody kreskowe i zapisać je jako pliki graficzne?
Oprócz odczytywania kodów kreskowych, IronBarcode pozwala użytkownikom na tworzenie kodów kreskowych przy minimalnym nakładzie pracy programistycznej. Call the CreateBarcode() method from the BarcodeWriter class, specifying the barcode value, type, width, and height in the method parameters. To zwraca obiekt GeneratedBarcode, który można zapisać jako plik graficzny za pomocą metody SaveAs().
Jakie typy danych mogę wykorzystać jako wartości BarCode?
Metoda BarcodeWriter.CreateBarcode() akceptuje wiele typów danych dla wartości kodu kreskowego: byte[] array, MemoryStream i string. Długość ciągów znaków i akceptowane znaki różnią się w zależności od typu BarCode — szczegółowe informacje można znaleźć w naszej dokumentacji API. Kod 128 obsługuje pełny zestaw znaków ASCII, natomiast kod UPC-A wymaga dokładnie 12 cyfr. Dla danych binarnych użyj byte[] array do kodowania złożonych struktur danych.
Jakie typy kodowania BarCode są obsługiwane?
IronBarcode obsługuje wiele formatów BARCODE — pełną listę można znaleźć w artykule Obsługiwane formaty BARCODE. Popularne formaty to między innymi:
- BarCodes liniowe/1D: Code128, Code39, UPC-A, UPC-E, EAN-8, EAN-13
- BarCodes 2D: QR Code, Data Matrix, PDF417, Aztec
- Formaty specjalistyczne: MaxiCode do wysyłek, Databar do handlu detalicznego
Każdy format ma swoje konkretne zastosowanie. Code128 dobrze radzi sobie z ogólnymi danymi alfanumerycznymi, natomiast kody QR oferują doskonałą korekcję błędów podczas skanowania mobilnego.
Jak ustawienia szerokości i wysokości wpływają na mój BarCode?
Ustaw wymiary obrazu BarCode w pikselach. Domyślne wymiary to 250 px dla obu. Niektóre typy BarCodes (QR, PDF417) wymagają określonych wymiarów, aby były zgodne z normami. Gdy wymiary wejściowe nie odpowiadają wymaganiom, BARCODE generowany jest w zgodnych wymiarach, a pozostała przestrzeń wypełniana jest białymi znakami. Zbyt małe wymiary powodują wygenerowanie wyjątku.
Aby uzyskać optymalny wynik skanowania:
- BarCodes liniowe: Zachowaj szerokość znacznie większą niż wysokość
- Kody kreskowe 2D: Należy stosować wymiary kwadratowe dla kodów QR (np. 250x250)
- Jakość druku: Wyższe rozdzielczości pikseli poprawiają jakość druku przy większych rozmiarach fizycznych
Do jakich formatów obrazów mogę eksportować BarCodes?
Obiekt GeneratedBarcode z BarcodeWriter.CreateBarcode() zapisuje w różnych formatach obrazów za pomocą specyficznych metod SaveAs():
SaveAsGif(): Zapisuje jako plik obrazu GIFSaveAsJpeg(): Zapisuje jako plik obrazu JPEGSaveAsPng(): Zapisuje jako plik obrazu PNG (zalecane dla webu)SaveAsTiff(): Zapisuje jako plik obrazu TIFF (idealne do archiwizacji/druku)SaveAsWindowsBitmap(): Zapisuje jako plik obrazu BMPSaveAsImage(): Metoda ogólna—określ rozszerzenie formatu w ścieżce pliku
Dodatkowo można eksportować kody kreskowe jako strumienie do przetwarzania w pamięci lub tworzyć kody kreskowe jako dokumenty PDF w celu integracji z dokumentacją.
Jak wygenerować BarCode i zapisać go jako plik graficzny?
Użyj BarcodeWriter.CreateBarcode(), aby utworzyć kod kreskowy Code128 i zapisać go jako obraz JPEG:
using IronBarCode;
// Create a basic barcode
BarcodeWriter.CreateBarcode("IronBarcode123", BarcodeEncoding.Code128, 200, 100).SaveAsJpeg("OneDBarcode.jpeg");
// Create a barcode with custom options
var myBarcode = BarcodeWriter.CreateBarcode("PRODUCT-12345", BarcodeEncoding.Code128, 300, 150);
// Apply styling
myBarcode.AddBarcodeValueTextBelowBarcode();
myBarcode.SetMargins(10);
// Save in multiple formats
myBarcode.SaveAsJpeg("product-barcode.jpg");
myBarcode.SaveAsPng("product-barcode.png");
using IronBarCode;
// Create a basic barcode
BarcodeWriter.CreateBarcode("IronBarcode123", BarcodeEncoding.Code128, 200, 100).SaveAsJpeg("OneDBarcode.jpeg");
// Create a barcode with custom options
var myBarcode = BarcodeWriter.CreateBarcode("PRODUCT-12345", BarcodeEncoding.Code128, 300, 150);
// Apply styling
myBarcode.AddBarcodeValueTextBelowBarcode();
myBarcode.SetMargins(10);
// Save in multiple formats
myBarcode.SaveAsJpeg("product-barcode.jpg");
myBarcode.SaveAsPng("product-barcode.png");
Imports IronBarCode
' Create a basic barcode
BarcodeWriter.CreateBarcode("IronBarcode123", BarcodeEncoding.Code128, 200, 100).SaveAsJpeg("OneDBarcode.jpeg")
' Create a barcode with custom options
Dim myBarcode = BarcodeWriter.CreateBarcode("PRODUCT-12345", BarcodeEncoding.Code128, 300, 150)
' Apply styling
myBarcode.AddBarcodeValueTextBelowBarcode()
myBarcode.SetMargins(10)
' Save in multiple formats
myBarcode.SaveAsJpeg("product-barcode.jpg")
myBarcode.SaveAsPng("product-barcode.png")
Aby uzyskać informacje na temat zaawansowanych opcji stylizacji, zapoznaj się z naszym przewodnikiem dotyczącym dostosowywania stylów BARCODE.
Jak wygenerować kody QR i zapisać je jako pliki graficzne?
Kody QR, klasyfikowane jako dwuwymiarowe BarCODES, są w pełni obsługiwane przez IronBarcode. Ich wszechstronność, atrakcyjny wygląd i możliwość dostosowania sprawiły, że są one powszechnie stosowane, od menu restauracji po systemy płatności.
Tworzenie kodów QR wymaga różnych metod ze względu na ich złożoność. Wywołaj metodę CreateQrCode() z klasy QRCodeWriter, która akceptuje 4 argumenty: wartość kodu kreskowego, rozmiar wyjściowego kodu QR, pole enum QRCodeWriter.QrErrorCorrectionLevel i QRVersion.
Jakie typy danych mogę wykorzystać dla wartości kodów QR?
QRCodeWriter.CreateQrCode() akceptuje wartości numeryczne, alfabetyczne lub alfanumeryczne jako typy byte[] array, MemoryStream lub System.String. Kody QR są doskonałe do przechowywania:
- Adresy URL: kierują użytkowników do stron internetowych lub stron docelowych
- Tekst: Możliwość zapisania do 4296 znaków alfanumerycznych
- Dane binarne: kodowanie plików lub złożonych struktur danych
- Dane ustrukturyzowane: vCards, dane logowania do sieci Wi-Fi lub informacje dotyczące płatności
Aby uzyskać informacje na temat obsługi Unicode i znaków międzynarodowych, zapoznaj się z naszym samouczkiem dotyczącym pisania BARCODE-ów Unicode.
Jak ustawić rozmiar kodu QR?
Określ rozmiar kodu QR bezpośrednio jako typ Int32 w pikselach (px). Domyślny rozmiar to 500 pikseli. Należy wziąć pod uwagę następujące czynniki:
- Nośnik wyświetlania: Wyświetlacze ekranowe zazwyczaj wymagają rozdzielczości 200–400 pikseli
- Aplikacje do drukowania: Użyj rozdzielczości 600 pikseli lub wyższej, aby uzyskać wysoką jakość wydruku
- Odległość skanowania: większe kody skanują się lepiej z większej odległości
Czym jest poziom korekcji błędów QR i dlaczego ma to znaczenie?
QRErrorCorrectionLevel określa tolerancję błędów, z czterema poziomami: Najwyższa, Wysoka, Średnia i Niska. Wyższe poziomy korekcji tworzą bardziej złożone kody QR, które są odporne na błędy odczytu nawet wtedy, gdy są uszkodzone lub częściowo zasłonięte.
QRErrorCorrectionLevel.Highest
Generuje najbardziej złożony kod QR z 30% korekcją błędów. Obsługuje umieszczanie logo lub grafiki. Idealny do personalizacji kodów QR za pomocą logo.
QRErrorCorrectionLevel.High
Zastosowano 25% korekty błędów. Mniej złożone niż poziom najwyższy. Równowaga między trwałością a pojemnością danych.
QRErrorCorrectionLevel.Medium
Zastosowano 15% korekty błędów. Generuje kody QR szybciej, ale jest bardziej podatny na błędy. Nadaje się do większości zastosowań biznesowych z wyraźnym drukiem.
QRErrorCorrectionLevel.Low
Stosuje korekcję błędu na poziomie 7%, tworząc najmniej złożony kod QR. Używaj, gdy wymagana jest maksymalna pojemność danych przy optymalnych warunkach skanowania.
Kiedy używać różnych wersji kodów QR?
Wersja QR (1-40) określa złożoność symbolu i pojemność danych. Wyższe wersje produkują bardziej złożone kody przechowujące więcej danych. Ustawienie zbyt niskiej wersji powoduje problemy z kodowaniem większych ilości danych. Wersja 0 automatycznie przypisuje odpowiednią wersję na podstawie kodowanej wartości. See QR Version for more information.
Jak utworzyć obraz kodu QR z określonymi ustawieniami?
Użyj QRCodeWriter.CreateQrCode(), aby napisać kod QR i zapisać go jako obraz:
using IronBarCode;
// Basic QR code creation
QRCodeWriter.CreateQrCode("IronBarcode1234", 250, QRCodeWriter.QrErrorCorrectionLevel.Medium, qrVersion: 0).SaveAsJpeg("QRMedium.jpeg");
// Advanced QR code with custom styling
var qrCode = QRCodeWriter.CreateQrCode("https://ironsoftware.com", 500, QRCodeWriter.QrErrorCorrectionLevel.High);
// Add logo and styling
qrCode.AddLogo("logo.png");
qrCode.ChangeBarCodeColor(System.Drawing.Color.DarkBlue);
// Save in multiple formats
qrCode.SaveAsPng("styled-qr.png");
qrCode.SaveAsPdf("styled-qr.pdf");
using IronBarCode;
// Basic QR code creation
QRCodeWriter.CreateQrCode("IronBarcode1234", 250, QRCodeWriter.QrErrorCorrectionLevel.Medium, qrVersion: 0).SaveAsJpeg("QRMedium.jpeg");
// Advanced QR code with custom styling
var qrCode = QRCodeWriter.CreateQrCode("https://ironsoftware.com", 500, QRCodeWriter.QrErrorCorrectionLevel.High);
// Add logo and styling
qrCode.AddLogo("logo.png");
qrCode.ChangeBarCodeColor(System.Drawing.Color.DarkBlue);
// Save in multiple formats
qrCode.SaveAsPng("styled-qr.png");
qrCode.SaveAsPdf("styled-qr.pdf");
Imports IronBarCode
' Basic QR code creation
QRCodeWriter.CreateQrCode("IronBarcode1234", 250, QRCodeWriter.QrErrorCorrectionLevel.Medium, qrVersion:=0).SaveAsJpeg("QRMedium.jpeg")
' Advanced QR code with custom styling
Dim qrCode = QRCodeWriter.CreateQrCode("https://ironsoftware.com", 500, QRCodeWriter.QrErrorCorrectionLevel.High)
' Add logo and styling
qrCode.AddLogo("logo.png")
qrCode.ChangeBarCodeColor(System.Drawing.Color.DarkBlue)
' Save in multiple formats
qrCode.SaveAsPng("styled-qr.png")
qrCode.SaveAsPdf("styled-qr.pdf")
Kod koduje wartość alfanumeryczną o rozdzielczości 250 pikseli ze średnią korekcją błędów. Wersja 0 pozwala programowi wybrać odpowiednią wersję kodu QR. SaveAsJpeg() akceptuje nazwę pliku z rozszerzeniem JPEG.
Najlepsze praktyki generowania obrazów kodów kreskowych
Dla aplikacji produkcyjnych:
- Wybierz właściwy format: PNG dla webu, TIFF dla archiwizacji, JPEG do ogólnego użytku
- Przetestuj skanowanie: Zweryfikuj kody kreskowe za pomocą wielu urządzeń skanujących
- Zastosuj odpowiednie marginesy: Użyj ustawień marginesu kodu kreskowego dla niezawodnego skanowania
- Rozważ wydajność: Zbadaj opcje asynchroniczne i wielowątkowe dla generacji na dużą skalę
Dla dodatkowych przykładów i technik, odwiedź nasz samouczek Generatora Obrazów Kodów Kreskowych w C#.
Często Zadawane Pytania
Jak stworzyc obraz kodu kreskowego w C# uzywajac jednej linii kodu?
Dzieki IronBarcode mozesz stworzyc obraz kodu kreskowego w jednej linii uzywajac metody BarcodeWriter.CreateBarcode(). Wystarczy przekazac swoje dane, typ kodowania, szerokosc i wysokosc, a nastepnie zapisac to jako plik graficzny. Na przyklad: IronBarCode.BarcodeWriter.CreateBarcode("Sample123", BarcodeEncoding.Code128, 250, 100).SaveAsPng("Barcode.png");
Jakie rodzaje danych moge zakodowac w kodach kreskowych?
Metoda BarcodeWriter.CreateBarcode() IronBarcode akceptuje wiele typow danych, w tym tablice bajtow, MemoryStreams i ciagi znakow. Dlugosci ciagow oraz dozwolone znaki roznia sie w zaleznosci od typu kodu kreskowego - Code128 obsluguje pelny zestaw znakow ASCII, podczas gdy UPC-A wymaga dokladnie 12 cyfr. Dla danych binarnych mozesz uzyc tablic bajtow, aby zakodowac zlozone struktury danych.
Jakie formaty kodow kreskowych sa obsługiwane dla generowania obrazow?
IronBarcode obsluguje wiele formatow kodow kreskowych, w tym liniowe/1D kody kreskowe (Code128, Code39, UPC-A, UPC-E, EAN-8, EAN-13), 2D kody kreskowe (QR Code, Data Matrix, PDF417, Aztec) oraz specjalistyczne formaty jak MaxiCode do wysylki i Databar dla handlu detalicznego. Kazdy format sluzy okreslonym zastosowaniom, z Code128 do obslugi danych alfanumerycznych oraz kodami QR oferujacymi doskonala korekte bledow dla skanowania mobilnego.
Jak ustawic wymiary mojego obrazu kodu kreskowego?
Możesz ustawić wymiary obrazu kodu kreskowego w pikselach bezpośrednio w parametrach metody CreateBarcode(). IronBarcode używa domyślnych wymiarów 250px dla zarówno szerokości, jak i wysokości. Niektóre typy kodów kreskowych, jak QR i PDF417, mogą wymagac specyficznych wymiarow dla zgodnosci, a biblioteka automatycznie dostosowuje, gdy wymiary wejściowe nie zgadzają się z wymaganiami.
W jakich formatach graficznych moge zapisac wygenerowane kody kreskowe?
IronBarcode pozwala zapisac wygenerowane kody kreskowe w wielu formatach graficznych za pomoca metody SaveAs(). Mozesz zapisac jako PNG uzywajac SaveAsPng(), a takze w innych popularnych formatach jak JPEG, BMP i TIFF. Obiekt GeneratedBarcode zwracany przez CreateBarcode() zapewnia rozne metody zapisu dla roznych typow plikow.
Czy moge generowac kody QR jak rowniez tradycyjne kody kreskowe?
Tak, IronBarcode w pelni obsluguje generowanie kodow QR wraz z tradycyjnymi kodami kreskowymi. Mozesz stworzyc kody QR uzywajac tej samej metody CreateBarcode(), okreslajac BarcodeEncoding.QRCode jako typ kodowania. Kody QR oferuja zalety jak doskonala korekta bledow i sa idealne dla aplikacji do skanowania mobilnego.

