IRONSOFTWAREHOME
IRONBARCODE KULLANARAK

C#'ta Metinden Barkod Oluşturun: IronBarcode ile Tam Eğitim

Curtis Chau
Curtis Chau
Updated: 8 Mayıs 2026

Dize verilerini barkod görüntülerine kodlamak, envanter sistemleri, perakende uygulamaları ve belge yönetimi için temel bir gereksinimdir. Bu eğitici makale, IronBarcode kullanarak C#'da dize değerlerinden barkodlar oluşturmayı gösterir -- kurulumdan çoklu formatlarda barkod görüntülerini kaydetmeye, üretim kullanımı için stil vermeye ve veritabanı verilerinden büyük partileri işlemeye kadar her şeyi kapsar.

IronBarcode, Windows uygulamaları, web hizmetleri ve bulut barındırılan API'ler geliştiren .NET geliştiricileri için barkod oluşturma ve okuma sürecini basitleştiren Iron Software tarafından geliştirilen bir .NET kütüphanesidir. Aşağıdaki kod örnekleriyle devam etmek için ücretsiz denemenize başlayın.

IronBarcode'u .NET Projesine Nasıl Yükleriz?

IronBarcode'un yüklenmesi, Visual Studio içindeki .NET CLI veya NuGet Paket Yöneticisi kullanılarak birkaç saniye sürer.

Seçenek 1 -- .NET CLI (NET 10 için önerilen):

dotnet add package Barcode
SHELL

Seçenek 2 -- Visual Studio'daki NuGet Paket Yöneticisi Konsolunda:

PM > Install-Package BarCode

Alternatif olarak, NuGet Paket Yöneticisi GUI'sinde "IronBarcode" arayın ve resmi paketi yükleyin. Kütüphane, .NET Framework 4.6.2+ ve .NET 5'ten .NET 10'a kadar olan modern .NET iş yükleriyle uyumluluğu garanti eder.

Kurulumdan sonra, çubuk kodları oluşturan veya okuyan her dosyanın en üstüne tek bir using yönergesi ekleyin:

using IronBarCode;

Bu yönerge, BarcodeWriter, BarcodeReader, BarcodeEncoding ve bu kılavuzda ele alınan diğer genel türleri açığa çıkarır.

C#'da Basit Bir Barkod Nasıl Oluşturulur?

BarcodeWriter.CreateBarcode yöntemi, çubuk kodu üretimi için giriş noktasıdır. Kodlamak istediğiniz dizeyi ve bir BarcodeEncoding değerini iletin, böylece kaydetmeye veya daha fazla işlemeye hazır bir GeneratedBarcode nesnesi geri alırsınız.

using IronBarCode;

// Generate a Code 128 barcode from a product SKU string
string productCode = "SKU-78432-A";
var barcode = BarcodeWriter.CreateBarcode(productCode, BarcodeEncoding.Code128);
barcode.SaveAsPng("product_barcode.png");

Barkod Oluşturma Çıktısı

C# Dizeden Çubuk Kodu Oluşturma: IronBarcode ile Tam Kılavuz: Görsel 1 - Örnek çıktı çubuk kodu

Bu, ürün dizisinden Code128 çubuk kodu görüntüsü oluşturur ve bunu bir PNG dosyası olarak kaydeder. CreateBarcode yöntemi tüm kodlama karmaşıklığını ele alır, böylece minimal kodla bir çubuk kodu görüntüsü üretilebilir. IronBarcode, PNG, JPEG, GIF, TIFF, BMP ve SVG formatlarına kaydetmeyi destekler.

Yöntem ayrıca, hedef ortamda doğru tarama kalitesini sağlamak için çıkış boyutlarını kontrol etmek için isteğe bağlı genişlik ve yükseklik parametrelerini kabul eder:

using IronBarCode;

// Specify width and height in pixels for the barcode image
string productCode = "SKU-78432-A";
var barcode = BarcodeWriter.CreateBarcode(productCode, BarcodeEncoding.Code128, 400, 120);
barcode.SaveAsPng("product_barcode_sized.png");

Etiket stokuna tam olarak uyması gereken termal etiket yazıcıları için etiketler oluşturan durumlarda, kesin boyutların ayarlanması özellikle kullanışlıdır.

IronBarcode Hangi Barkod Biçimlarını Destekler?

IronBarcode, farklı kullanım durumları için 20'den fazla barkod türünü destekler. Doğru formatın seçilmesi, uygun tarama ve uygulama için yeterli veri kapasitesi sağlar.

using IronBarCode;

string url = "https://ironsoftware.com/csharp/barcode/";
string numericId = "0123456789012";

// QR Code -- best for URLs, text data, and mobile scanning
BarcodeWriter.CreateBarcode(url, BarcodeEncoding.QRCode)
    .SaveAsPng("qrcode.png");

// UPC-A -- required for retail point-of-sale systems (12 digits)
BarcodeWriter.CreateBarcode(numericId, BarcodeEncoding.UPCA)
    .SaveAsPng("upc_barcode.png");

// PDF417 -- suited for documents that need higher data capacity
BarcodeWriter.CreateBarcode("Extended product details here", BarcodeEncoding.PDF417)
    .SaveAsJpeg("pdf417_barcode.jpeg");

Barkod Görüntü Çıkışları

C# Dizeden Çubuk Kodu Oluşturma: IronBarcode ile Tam Kılavuz: Görsel 2 - Üretilen Çubuk Kodları

Aşağıdaki tablo, her büyük formatın ne zaman kullanılacağını özetler:






IronBarcode destekli barkod formatları kullanım durumuna göre
BiçimEn İyi İçinKarakter Kümesi
QRCodeURL'ler, metin, mobil taramaASCII + Unicode
Code128Alfasayısal ürün kodları, nakliye etiketleriTam ASCII
UPCA / EAN13Perakende satış noktası sistemleriYalnızca sayısal
PDF417Kimlik kartları, biniş kartları, belgelerİkili veri
DataMatrixKüçük etiketler, elektronikASCII + İkili
AztecTaşıma biletleri, mobil binişASCII + Unicode

Desteklenen kodlama türlerinin tam listesi için IronBarcode barkod türleri referansını ziyaret edin.

C#'da Barkod Görüntülerini Özelleştirme ve Stil Verme Nasıl Yapılır?

Temel barkod oluşturmanın ötesinde, IronBarcode, dış bir görüntü işleme kütüphanesine ihtiyaç duymadan renkleri ayarlamak, açıklamalar eklemek ve barkod görüntülerini yeniden boyutlandırmak için akıcı bir stil API'ı sunar.

using IronBarCode;
using IronSoftware.Drawing;

string orderNumber = "ORD-2024-00542";
var styledBarcode = BarcodeWriter.CreateBarcode(orderNumber, BarcodeEncoding.Code128);

// Adjust colors to match brand identity
styledBarcode.ChangeBarCodeColor(Color.DarkBlue);
styledBarcode.ChangeBackgroundColor(Color.White);

// Add readable text annotations above and below the bars
styledBarcode.AddAnnotationTextAboveBarcode("Order Number", new Font("Arial", 12), Color.Black, 5);
styledBarcode.AddBarcodeValueTextBelowBarcode(new Font("Arial", 10), Color.Gray, 5);

// Resize to fit a thermal label at 400 x 150 pixels
styledBarcode.ResizeTo(400, 150);
styledBarcode.SaveAsPng("styled_order_barcode.png");

Stil Verilmiş Barkod Çıkışı

C# Dizeden Çubuk Kodu Oluşturma: IronBarcode ile Tam Kılavuz: Görsel 3 - stilize edilmiş çubuk kodu

Hangi Stil Özellikleri Mevcut?

GeneratedBarcode sınıfı, çeşitli stil yöntem kategorilerini açığa çıkarır:

  • Renk kontrolü -- ChangeBarCodeColor, ChangeBackgroundColor, Color içinden herhangi birini kabul eder IronSoftware.Drawing
  • Metin açıklamaları -- özelleştirilmiş yazı tipi, boyutu ve rengini ile barkodun üstüne veya altına metin ekleyin
  • Kenarlık kontrolü -- karışık etiketlerde tarayıcı performansını iyileştirmek için barkod etrafında dolgu belirleyin
  • Dönüş -- portre yönü gerektiren etiket düzenleri için barkod görüntüsünü yan veya çapraz döndürme
  • Yeniden boyutlandırma -- kodlanan verileri bozmadan genişlik ve yükseklik piksel olarak sabitleyin

Stil yöntemleri doğal olarak zincirlenir, kodun okunabilirliğini korurken uygulamanın görsel tasarımına uygun barkod görüntüleri üretir. Daha derinlemesine bir kılavuz için barkod stili nasıl yapılır kılavuzuna bakın.

Veritabanı Verilerinden Birden Çok Barkod Nasıl Oluşturulur?

Gerçek dünya uygulamaları, ürün katalogları, stok yenileme çalışmaları veya sipariş sevkiyat iş akışları gibi öğe koleksiyonları için sık sık barkod oluşturma gerektirir. IronBarcode, ek yapılandırma gerektirmeyen toplu işlem yapar.

using IronBarCode;

// Data sourced from a database query result
List<string> productIds =
[
    "PROD-001-X",
    "PROD-002-Y",
    "PROD-003-Z",
    "PROD-004-W"
];

// Generate one barcode image per product ID
foreach (string productId in productIds)
{
    var barcode = BarcodeWriter.CreateBarcode(productId, BarcodeEncoding.Code128, 300, 100);
    barcode.SaveAsPng($"barcodes/{productId}.png");
}

Çıktı Barkodları

C# Dizeden Çubuk Kodu Oluşturma: IronBarcode ile Tam Kılavuz: Görsel 4 - birden çok üretilmiş çubuk kodu

Yüksek Hacimlere Ölçeklenme

Yukarıdaki döngü deseni, herhangi bir modifikasyon yapılmadan binlerce kayda ölçeklenir. Yüksek hacimli barkod oluşturma için, IronBarcode, çok çekirdekli sunucularda verimi en üst düzeye çıkarmak için asykron ve çok enerjili işlemleri destekler.

Üretilen barkod görüntüleri, PDF raporlarına gömülebilir, etiketlerde yazdırılabilir veya bir belge yönetim sisteminde saklanabilir. Her görüntü, barkod tarayıcılarının metne geri çözdüğü ikili bir desende orijinal dizeyi kodlar.

Üretim toplu işler için, her çağrı, @@--CODE-5764--@@, döngü başlamadan önce IronBarcode motorunu önceden ısıtmayı düşünün. CreateBarcode ilk çağrısı, dahili kodlama önbelleklerini başlatır; aynı süreç içindeki ardışık çağrılar bu yüzden daha hızlı tamamlanır. Tüm partiyi tek bir zamanlanmış yöntem içinde sararak akümülatif istatistikleri -- toplam oluşturulan barkodlar, herhangi bir kodlama hatası ve geçen süre -- kaydetmek kolaylaşır, parti sona ermeden önce. Bu desen, Hangfire veya .NET'in yerleşik IHostedService gibi arka plan iş çerçeveleriyle temiz bir şekilde entegre olur.

Barkodları Farklı Dosya Biçimlarında Nasıl Kaydeder ve Dışa Aktarırsınız?

GeneratedBarcode, iş uygulamalarında kullanılan en yaygın görüntü formatlarını kapsayan bir dizi kaydetme yöntemi sunar:

using IronBarCode;

string value = "EXPORT-TEST-001";
var barcode = BarcodeWriter.CreateBarcode(value, BarcodeEncoding.Code128, 400, 120);

// Save to disk in multiple formats
barcode.SaveAsPng("barcode.png");       // Lossless -- best for print
barcode.SaveAsJpeg("barcode.jpg");      // Compressed -- smaller file size
barcode.SaveAsGif("barcode.gif");       // Compatible with legacy systems
barcode.SaveAsTiff("barcode.tiff");     // Multi-page archival format
barcode.SaveAsBmp("barcode.bmp");       // Uncompressed bitmap

// Export as a byte array for in-memory operations (API responses, database storage)
byte[] pngBytes = barcode.ToStream(ImageFormat.Png).ToArray();

Doğru formatı seçmek, aşağı akış tüketicisine bağlıdır. PNG, baskıya hazır etiketler ve belgeler için iyi çalışır. JPEG, depolama boyutunun bir kısıt olduğu uygulamalar için uygundur. Barkodları doğrudan PDF belgelerine gömme için, IronBarcode, barkod görüntülerini programlı olarak damgalamak veya eklemek için IronPDF ile entegre olur.

ToStream aşırı yüklemesi, diske yazmanın istenmediği web API'leri ve bulut işlevlerinde özellikle değerlidir. Bayt dizisi, bir veri tabanı BLOB sütununda saklanabilir, bulut depolama alanına yüklenebilir veya herhangi bir ara dosya olmadan doğrudan bir HTTP yanıtına aktarılabilir.

Veriyi Kodlamadan Önce Nasıl Doğrularsınız?

Her dize, her barkod formatı için geçerli değildir. UPC-A tam olarak 12 adet sayısal rakam gerektirir, EAN-13 ise 13 gerektirir ve bazı 1D formatları sınırlı bir ASCII dizisinin dışındaki karakterleri reddeder. Geçersiz veriyi CreateBarcode göndermek bir IronBarCodeEncodingException oluşturur. Çağrıyı bir try/catch bloğunda sararak ve girdileri önceden doğrulayarak üretimde işlenmemiş istisnaları önler:

using IronBarCode;

bool TryCreateBarcode(string value, BarcodeEncoding encoding, string outputPath)
{
    if (string.IsNullOrWhiteSpace(value))
    {
        Console.WriteLine("Value must not be empty.");
        return false;
    }

    try
    {
        var barcode = BarcodeWriter.CreateBarcode(value, encoding);
        barcode.SaveAsPng(outputPath);
        return true;
    }
    catch (IronBarCodeEncodingException ex)
    {
        Console.WriteLine($"Encoding failed: {ex.Message}");
        return false;
    }
}

// Usage
TryCreateBarcode("SKU-001", BarcodeEncoding.Code128, "output.png");   // succeeds
TryCreateBarcode("NOT-NUMERIC", BarcodeEncoding.UPCA, "output.png");  // encoding exception

Girdi Verileri İçin Doğru Biçimı Seçme

Barkod formatı çalıştırma zamanında yapılandırılabilir olduğunda, içerik türünü uygun kodlamaya eşleyen bir yardımcı gizli hataları önler:

  • Dizgede URL'ler, e-posta adresleri veya çok baytlı Unicode karakterleri varsa BarcodeEncoding.QRCode kullanın.
  • Yaklaşık 80 karaktere kadar genel alfanumerik dize için BarcodeEncoding.Code128 kullanın.
  • Veri tamamen sayısal ve uzunluk sabitse yalnızca BarcodeEncoding.EAN13 veya BarcodeEncoding.UPCA kullanın. Kontrol rakamı IronBarcode tarafından otomatik olarak hesaplanır.
  • Fiziksel olarak küçük bir etikete uyması gereken çok kısa alfanumerik dizeler için BarcodeEncoding.DataMatrix kullanın.

CreateBarcode çağrılmadan önce biçim doğrulaması eklemek, hata mesajlarını uygulama günlüklerindeki çözülemeyen yığın izleri yerine kullanıcıya yönelik tutar.

Bir Dizgi Değerinden Barkodu Geri Nasıl Okursunuz?

Birçok sistemde barkod oluşturmak, iş akışının sadece yarısıdır. çubuk kod okuma API'si, bir görüntüyü orijinal dizgeye geri çözmek için BarcodeReader.Read kullanır.

using IronBarCode;

// Read all barcodes from an image file
var results = BarcodeReader.Read("product_barcode.png");

foreach (var result in results)
{
    // Output the decoded string value
    Console.WriteLine($"Decoded value: {result.Value}");
    Console.WriteLine($"Biçim detected: {result.BarcodeType}");
}
C#

Bu, yuvarlak-trip barkod iş akışlarını -- bir ürün kaydından barkod oluşturma, disk veya bir etiket yazıcı kuyruğuna kaydetme, daha sonra fiziksel etiketi tarama ve kaydı görmek için değeri kod çözme -- oluşturmayı kolaylaştırır. PDF dosyalarından barkodları okuma veya canlı kamera akımlarında, IronBarcode, aynı basit API ile özel yöntemler sunar.

IronBarcode ASP.NET Core Web API'lerinde Nasıl Kullanılır?

IronBarcode, ASP.NET Core kontrolcülerinde ve minimal API işleyicilerde çalışır. En yaygın desen, tarayıcıda renderlama için bir dosya sonucu veya base64 kodlu veri URI olarak bir barkod görüntüsü döndürür.

using IronBarCode;
using Microsoft.AspNetCore.Mvc;

var builder = WebApplication.CreateBuilder(args);
var app = builder.Build();

// Minimal API endpoint -- returns a barcode PNG for the given value
app.MapGet("/barcode/{value}", (string value) =>
{
    var barcode = BarcodeWriter.CreateBarcode(value, BarcodeEncoding.Code128, 400, 120);
    byte[] imageBytes = barcode.ToStream(ImageFormat.Png).ToArray();
    return Results.File(imageBytes, "image/png");
});

app.Run();

Uç nokta, URL yolunda geçirilen herhangi bir değer için talebe bağlı bir barkod oluşturur. Üretim dağıtımları için, aynı barkod değerine yönelik tekrarlayan isteklerin görüntüyü yeniden oluşturmamasını sağlamak için önbellekleme ekleyin. Bağımlılık enjeksiyonu ve yanıt önbellekleme dahil olmak üzere daha ayrıntılı bir adım adım kılavuz için tam ASP.NET barkod oluşturma öğreticisine bakın.

Sonraki Adımlarınız Neler?

C# dilinde string verilerden barkod oluşturmak IronBarcode ile kolaydır. Akıcı API, barkod kodlamasının karmaşıklığını yönetirken özelleştirme ve toplu işleme için esneklik sağlar. Hedefiniz envanter için basit Code 128 barkodları veya mobil uygulamalar için QR kodları olsun, IronBarcode, .NET uygulamaları için güvenilir barkod işlevselliği sunar.

Daha ileri gitmek için:

İlk Adım:
arrow pointer
Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapılandırılmış, görsel olarak çekici kılavuzlar oluşturmayı seviyor.

...
Daha Fazla Oku

İlgili Makaleler

Key in blue circle

Ücretsiz 30 günlük Deneme Anahtarınızı anında edinin.

Your trial license will be sent to your email address

Herhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.

bullet_checkedKredi kartı veya hesap oluşturma gerektirmezHerhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Ücretsiz Canlı Demo rezervasyonu yapın
Booking Badge

Dünya Çapında Milyonlarca Mühendisin Güvendiği

Iron Software müşteri logoları
Bağımsız Danışmanlık Alın
Aşağıdaki formu doldurun veya sales@ironsoftware.com adresine e-posta gönderin
Bilgileriniz daima gizli kalacaktır.
Dünya Çapında Milyonlarca Mühendisin Güvendiği
Iron Software müşteri logoları
Ücretsiz 30 Günlük Deneme Anahtarınızı anında alın.
Kredi kartı veya hesap oluşturma gerektirmez