Altbilgi içeriğine atla
IRONBARCODE KULLANARAK

IronBarcode Kullanarak Barkod .NET Bileşen Eğitimi

Bir barkod .NET bileşeni, C# uygulamalarında sadece birkaç satır kodla barkodlar üretmenizi ve okumanızı sağlayan bir yönetilen kod kütüphanesidir. IronBarcode, tüm ana sembolojileri - Code 128, QR, Data Matrix, EAN, UPC ve daha fazlasını - destekler ve ek bir çalışma zamanı bağımlılığı olmadan Windows, Linux ve macOS üzerinde çalışır.

NuGet üzerinden yükleyin ve birkaç dakika içinde barkod üretmeye başlayın:

Install-Package BarCode

Barkod .NET Bileşeni Nedir?

Bir barkod .NET bileşeni, temiz bir API aracılığıyla barkod üretme ve okuma yetenekleri sağlayan bir NuGet paketi olarak paketlenmiş bir yazılım kütüphanesidir. Barkod yazı tiplerinden farklı olarak, manuel kontrol toplamı hesaplamaları ve karmaşık biçim kuralları gerektirenleri, özel bir bileşen, tüm kodlama mantığını dahili olarak işler.

IronBarcode kütüphanesi iki ana giriş noktası sunar:

  • BarcodeWriter -- metin veya sayısal verilerden barkod görüntüleri, PDF'ler ve HTML oluşturur
  • BarcodeReader -- barkod değerlerini çıkarmak için görüntüleri, PDF'leri ve çok çerçeveli TIFF'leri tarar

Bu iki yönlü tasarım, aynı kütüphaneyi kullanarak etiketlere barkod yazdırabileceğiniz ve belgelerden geri tarayabileceğiniz anlamına gelir, bu envanter yönetimi, belge takibi, Crystal Reports entegrasyonu ve veri otomasyonu iş akışları için esastır.

Desteklenen sembolojiler şunları içerir:

  • 1D lineer: Code 128, Code 39, Code 93, ITF-14, EAN-13, EAN-8, UPC-A, UPC-E
  • 2D matris: QR Kodu, Data Matrix, PDF417, Aztec
  • GS1 varyantları: GS1-128, GS1 DataBar

Üretim sistemleri tipik olarak ürün takibi için Code 128 kullanır çünkü alfanumerik verileri verimli bir şekilde kodlar. Sağlık uygulamaları genellikle ilaç etiketleme için Data Matrix'e güvenir çünkü çok küçük boyutlarda iyi yazdırır. Perakende satış noktası sistemleri, EAN-13 ve UPC-A barkodlarını kasada tarar. Barkod işlevselliği entegrasyonunda karar alacağınız ilk şeylerden biri, kullanım durumu için doğru sembolojiyi seçmektir.

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

Visual Studio'da veya .NET CLI'da NuGet Paket Yöneticisi kullanarak IronBarcode kurulumunu iki dakikadan az sürer.

Paket Yöneticisi Konsolu (Visual Studio):

Install-Package BarCode

.NET CLI:

dotnet add package BarCode

C#: Bir Barkod .NET Bileşeni Nasıl Entegre Edilir: Şekil 3 - Kurulum

Paket yüklendikten sonra, barkod işlevselliğini kullanan her dosyanın en üstüne namespace'i ekleyin:

using IronBarCode;
using IronBarCode;
Imports IronBarCode
$vbLabelText   $csharpLabel

IronBarcode, .NET Framework 4.6.2 ve sonrası, .NET Core 3.1 ve sonrası ve .NET 5'ten .NET 10'a kadar olan sürümleri hedefler. Windows, Linux ve macOS üzerinde çalışır, böylece aynı kod bulut barındırılan konteynerlerde, şirket içi sunucularda ve geliştirici iş istasyonlarında platforma özgü bir yapılandırma olmadan çalışır.

ASP.NET Core uygulamaları için, middleware kaydı gerekmez. API'yi direkt olarak denetleyicilerden, arka plan hizmetlerinden veya Razor Pages'ten çağırırsınız. Windows Forms ve WPF uygulamaları aynı şekilde erişim sağlar -- namespace'i ekleyin ve yöntemleri çağırmaya başlayın.

C#: Bir Barkod .NET Bileşeni Nasıl Entegre Edilir: Şekil 4 - Çapraz Platform Desteği ile Barkod Üretimi

Çevrimdışı NuGet beslemesi yapılandırması ve proxy ayarları dahil detaylı kurulum adımları, IronBarcode başlangıç kılavuzunda mevcuttur.

C#'da Bir Barkod Görüntüsü Nasıl Oluşturulur?

IronBarcode ile bir barkod üretmek üç adım gerektirir: kodlamayı seçmek, değeri belirlemek ve çıktıyı kaydetmek. Aşağıdaki örnek, bir Code 128 barkodu oluşturur ve hem PNG görüntüsü hem de PDF belgesi olarak kaydeder:

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");
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");
Imports IronBarCode

' Create a Code 128 barcode encoding a product identifier
Dim 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")
$vbLabelText   $csharpLabel

ResizeTo() yöntemi, piksel boyutlarını hassas bir şekilde ayarlar ki bu, belirli bir DPI'da etiket basarken önem taşır. AddBarcodeValueTextBelowBarcode() çağrısı, çubukların altına insan tarafından okunabilir metin ekler, böylece depo ve perakende ortamlarında manuel doğrulama kolaylaşır.

Barkod Çıkış Formatları

C#: Bir Barkod .NET Bileşeni Nasıl Entegre Edilir: Şekil 5 - PNG Çıkışı

C#: Bir Barkod .NET Bileşeni Nasıl Entegre Edilir: Şekil 6 - PDF Çıkışı

IronBarcode, PNG, JPEG, GIF, TIFF, BMP, PDF, HTML ve base64 dizgilerine dışa aktarır. Base64 formatı, bar kodları API yanıtlarında gömme için özellikle yararlıdır, böylece frontend bunları dinamik olarak işleyebilir ve diske dosya yazılmasını gerektirmez.

C#'da Bir QR Kodu Nasıl Oluşturulur?

QR kodları için IronBarcode, hata düzeltme seviyeleri ve modül boyutu kontrolü için yerleşik destekle QRCodeWriter sınıfını sağlar:

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");
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");
Imports IronBarCode

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

' Save the QR code to a PNG file
qrCode.SaveAsImage("product-qr.png")
$vbLabelText   $csharpLabel

QR kodları, URL'leri, düz metinleri, vCard iletişim verilerini, Wi-Fi kimlik bilgilerini ve keyfi bayt dizilerini kodlayabilir. Barkod üretim örnekleri sayfası, Data Matrix ve PDF417 dahil ek kodlama senaryolarını kapsar.

Görüntülerden Barkodlar Nasıl Okunur?

Görüntülerden barkodları okumak, onları yazmak kadar doğrudan bir işlemdir. BarcodeReader.Read() yöntemi bir dosya yolu, Stream, Bitmap veya IronSoftware.Drawing.AnyBitmap kabul eder ve bir BarcodeResults koleksiyonu döndürür:

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}");
}
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}");
}
Imports IronBarCode

' Read all barcodes from a scanned document image
Dim results As BarcodeResults = BarcodeReader.Read("scanned-document.png")

' Iterate over every detected barcode
For Each result As BarcodeResult In results
    Dim value As String = result.Value
    Dim type As BarcodeEncoding = result.BarcodeType
    Console.WriteLine($"Detected {type}: {value}")
Next
$vbLabelText   $csharpLabel

Okuyucu, görüntüleri otomatik olarak döndürme, eğilme, gürültü, düşük kontrast ve perspektif bozulmalarını düzeltmek için ön işler. Bu, ham tarayıcı çıktısını kendiniz ön işlemeden doğrudan geçirebileceğiniz anlamına gelir.

Gerçek Bir Belgeden Tarama

C#: Bir Barkod .NET Bileşeni Nasıl Entegre Edilir: Şekil 7 - Scan için hazır Code128 barkodu

Okuma Çıkışı

C#: Bir Barkod .NET Bileşeni Nasıl Entegre Edilir: Şekil 8 - Barkod Çıkışı

Barkod Okuma Seçenekleri Nasıl Yapılandırılır?

Yüksek hacimli veya zorlu tarama senaryoları için, BarcodeReaderOptions okuma algoritması üzerinde ayrıntılı kontrol sağlar:

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);
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);
Imports IronBarCode

Dim options As New BarcodeReaderOptions With {
    .Speed = ReadingSpeed.Balanced,
    .ExpectMultipleBarcodes = True,
    .ExpectBarcodeTypes = BarcodeEncoding.AllOneDimensional
}

' Read from a multi-page PDF warehouse inventory report
Dim results = BarcodeReader.Read("warehouse-inventory.pdf", options)
$vbLabelText   $csharpLabel

ExpectBarcodeTypes değerini, gerçekten beklediğiniz formatlarla eşleştirmek, okuyucu eşleşemeyen desenleri atlarken çıktıyı artırır. Speed özelliği Faster (temiz, yüksek kaliteli görüntüler için en iyisi) ile ExtremeDetail (hasarlı veya düşük çözünürlüklü kaynaklar için en iyisi) arasında değişir. Barkod okuma dokümanları, çoklu iş parçacığı ve ilgi alanı taraması dahil ek seçenekleri kapsar.

Barkod Görünümü Nasıl Özelleştirilir?

IronBarcode, kaydetmeden önce üretilen bir barkodun her görsel yönünü kontrol etmenizi sağlar. Renkleri, yazı tiplerini, kenar boşluklarını ve açıklama metnini programlı olarak ayarlayabilirsiniz. Bu, marka etiketleri için veya etiket düzeninin belirli spesifikasyonları takip ettiği düzenlemeye tabi endüstrilerde barkod oluştururken kullanışlıdır.

API, akıcı bir tarzda bir deseni takip eder: barkod üretin, stil yöntemlerini çağırın, sonra kaydedin. Tüm stil özellikleri çıkışı hemen etkiler ve ayrı bir render adımı gerektirmez. Tüm mevcut özelliklerin tam listesini görmek için stil ve açıklama örneklerine bakın.

PDF Belgelerinde Barkodlar Nasıl Yönetilir?

IronBarcode, PDF dosyalarına gömülü barkodları görüntü dosyalarını okuduğu şekilde okur. BarcodeReader.Read() yöntemine bir PDF yolu verin ve kütüphane her sayfadan otomatik olarak barkodları çıkarır. Bu, hesap ödemeleri iş akışları için faktura PDF'lerinin GS1-128 barkodları içermesi gerektiğinde ve lojistik sistemlerde gönderi manifestolarının PDF ekleri olarak dağıtıldığı durumlarda değerlidir.

IronBarcode'u kullanarak IronPDF ile belge üretimi yaparak PDF sayfalarına doğrudan barkod yazabilirsiniz. Yaygın bir model, hem insan tarafından okunabilir bir adres bloğu hem de takip numarası için taranabilir bir Code 128 barkodu içeren bir gönderi etiketi PDF'si oluşturmaktır.

PDF barkod iş akışları hakkında daha fazla bilgi için, IronBarcode eğitimler bölümü, fatura işleme, toplu etiket yazdırma ve belge arşivleme konularını kapsamlı bir şekilde örneklendirir.

Bar kodları ASP.NET Core API'lerine Nasıl Entegre Edersiniz?

Web portalları için dinamik etiketler gösteren ASP.NET Core denetleyici uç noktası üzerinden bir barkod görüntüsü döndürmek yaygın bir gereksinimdir. IronBarcode'un base64 çıktısı, bunu basit hale getirir:

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");
}
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");
}
Imports IronBarCode

' In an ASP.NET Core controller action
Public Function GetBarcodeImage(productId As String) As IActionResult
    Dim barcode = BarcodeWriter.CreateBarcode(productId, BarcodeEncoding.Code128)
    barcode.ResizeTo(400, 100)
    barcode.AddBarcodeValueTextBelowBarcode()

    ' Return the barcode as a PNG image response
    Dim imageBytes As Byte() = barcode.ToJpegBinaryData()
    Return File(imageBytes, "image/jpeg")
End Function
$vbLabelText   $csharpLabel

Bu yaklaşım, herhangi bir frontend çerçevesi ile çalışır. Tarayıcı standart bir görüntü yanıtı alır ve bunu bir <img> etiketi içinde gösterir. Yüksek trafik uç noktaları için, aynı ürün kimliği her zaman aynı barkod görüntüsünü ürettiğinden, barkodları bir kez üretin ve bayt dizisini önbelleğe alın.

IronBarcode API referansı, çok yüksek çözünürlüklü barkodlar için büyük bayt dizilerini ayırmayı önleyen akış çıktısı dahil olmak üzere mevcut tüm yöntemleri belgeler.

IronBarcode Barkod Doğrulama ve Hata Düzeltmeyi Nasıl Ele Alır?

Barkod standartları, sıkı kodlama kurallarını ve kontrol toplamı gereksinimlerini tanımlar. Code 128, ağırlıklı modül-103 kontrol toplamı kullanır. EAN-13 modül-10 kullanır. QR kodları, barkodun %30'a kadarı kapanmış veya zarar görmüş olsa bile kısmi veri kurtarmayı sağlayan Reed-Solomon hata düzeltmeyi gömülü olarak barındırır.

IronBarcode bu kuralları otomatik olarak uygular. BarcodeWriter.CreateBarcode() çağrıldığında, kütüphane verinin sembolojinin karakter seti ve uzunluk kısıtlamalarına uyduğunu doğrular, ardından doğru kontrol toplamını kodunuzdan ekstra bir adım gerekmeden hesaplar ve ekler. Bu, tarayıcıların reddedeceği geçersiz barkodların üretilmesini önler.

Okuma tarafında, kütüphane, şifre çözme sırasında hata düzeltme uygular, bu da genellikle kısmen yırtılmış, leke olmuş veya düşük çözünürlükte basılmış bir barkoddan doğru değeri kurtarabileceği anlamına gelir. Bu davranış, perakende ve lojistikte GS1 barkod standartları uyumu için özellikle önemlidir.

Barkod hata düzeltmenin spesifikasyon seviyesinde nasıl çalıştığını daha derinlemesine incelemek için, ISO/IEC barkod standartları dokümantasyonu, yetkili teknik referansı sağlar.

Yaygın Barkod Entegrasyon Senaryoları Nelerdir?

Yaygın barkod entegrasyon senaryoları ve önerilen IronBarcode özellikleri
Senaryo Semboloji Temel IronBarcode Özelliği
Perakende satış noktası EAN-13, UPC-A BarcodeEncoding.EAN13, PDF dışa aktarma
Depo envanteri Code 128, ITF-14 ExpectMultipleBarcodes = true
Sağlık etiketi Data Matrix, GS1-128 Küçük boy baskı, yüksek DPI dışa aktarma
Belge takibi PDF417, Code 39 PDF okuma, çoklu sayfa desteği
Mobil ürün araması QR Kodu QRCodeWriter.CreateQrCode()
Kargo etiketleri Code 128, GS1-128 Etiket boyutlu PDF çıkışı, metin açıklaması

Her bir senaryo, farklı yapılandırma seçimlerinden faydalanır. IronBarcode örnek galerisi, yukarıdaki tüm senaryolar için çalıştırılabilir kod sağlar.

Sonraki Adımlarınız Neler?

Bir barkod .NET bileşeni entegrasyonu, haftalar sürecek özel bir geliştirme çabası olabilecek şeyi, bir öğleden sonraya sığacak şekilde yapar. IronBarcode, kodlama kurallarını, kontrol toplamlarını, görüntü ön işlemesini ve hata düzeltmeyi yönetir, böylece ekibiniz barkod iş akışlarının çevresindeki iş mantığıyla ilgili olabilir, kendileri yerine barkod mekanikleriyle ilgili değil.

İlerlemek için:

  1. Paket yükle: dotnet add package BarCode veya Install-Package BarCode Paket Yöneticisi Konsolunda
  2. Hızlı başlatmayı deneyin: barkod hızlı başlatma örneği, 20 satırın altında kodla üretim ve okumayı yürür
  3. Sembolojileri keşfedin: desteklenen barkod türleri referansı, tüm kodlama formatlarını kullanım rehberiyle listeler
  4. Fiyatlandırmayı inceleyin: IronBarcode lisanslama seçenekleri, tek geliştirici, ekip ve OEM yeniden dağıtım kullanım durumlarını kapsar
  5. Ücretsiz deneme başlatın: Tam özellik setini kendi uygulamanızda değerlendirmek için 30 günlük ücretsiz deneme lisansı indirin

Kurumsal lisanslama, yüksek hacimli uygulamalar veya teknik entegrasyon zorlukları hakkında sorular için, IronBarcode destek ekibi yardım etmeye hazırdır.

Barkod standartları ve spesifikasyonları için harici referanslar:

Sıkça Sorulan Sorular

Barkod .NET bileşeni nedir?

Bir barkod .NET bileşeni, geliştiricilere barkod oluşturma ve taramayı .NET uygulamalarına entegre etme olanağı sağlayan, kodlama kurallarını, checksums'u ve görüntü ön işleme işlemlerini otomatik olarak gerçekleştiren bir yazılım kütüphanesidir.

.NET uygulamalarında IronBarcode nasıl yardımcı olabilir?

IronBarcode, C# uygulamalarına barkod yetenekleri eklemek için bar kod oluşturma ve okuma işlemleri için basit bir API sağlayan bir .NET bileşeni sunar, bu da kodlama algoritmalarını manuel olarak uygulamalarını gerektirmez.

IronBarcode kullanarak hangi tür barkodlar oluşturulabilir?

IronBarcode, Code 128, Code 39, Code 93, ITF-14, EAN-13, EAN-8, UPC-A, UPC-E, QR Code, Data Matrix, PDF417, Aztec ve GS1 varyantlarını destekler.

Kendi çözümümü yaratmak yerine neden bir barkod bileşeni kullanmalıyım?

Profesyonel bir barkod bileşeni, checksum hesaplaması, hata düzeltme, görüntü ön işleme ve çoklu format desteğini otomatik olarak yönetir, geliştirme süresini kısaltır ve geçersiz barkodlar oluşturma riskini azaltır.

IronBarcode veri otomasyon görevleri için uygun mu?

Evet, IronBarcode veri otomasyonu için çok uygundur. Görüntülerden ve PDF'lerden barkod okur ve doğrudan arka plan hizmetleri, zamanlanmış işler ve ASP.NET Core API'lerine entegre edilir.

IronBarcode belge takibi için kullanılabilir mi?

Evet. IronBarcode, çok sayfalı PDF dosyalarından ve çok çerçeveli TIFF'lerden barkod okuyarak, lojistik, ödenecek hesaplar ve kayıt yönetiminde belge takibi iş akışları için pratik hale getirir.

IronBarcode hangi .NET sürümlerini destekliyor?

IronBarcode, .NET Framework 4.6.2 ve sonrası, .NET Core 3.1 ve sonrası ve .NET 5 ila .NET 10 destekler, Windows, Linux ve macOS üzerinde çalışır.

IronBarcode envanter yönetim sistemlerini nasıl geliştirir?

IronBarcode, güvenilir barkod üretimi ve görüntülerden ve PDF'lerden çoklu barkod taraması sağlayarak depo ve perakende ortamlarında hızlı ve doğru envanter takibini kolaylaştırır.

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ı...

Daha Fazla Oku

Iron Destek Ekibi

Haftada 5 gün, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara