C#

C# Barkod Oluşturma

Herkese merhaba, C# yazılarımıza kaldığımız yerden devam ediyoruz. Bu yazımızda C# ile barkod oluşturmayı anlatacağım. Hadi başlayalım !

C# ile barkod oluşturmak için bir çok yolumuz bulunmakta. Bunlardan bir tanesi kendi barkod oluşturma kodumuzu yazmak, bir diğeri ise barkod oluşturan paketleri kullanmak. Bu yazıda hazır kütüphane kullanarak barkod oluşturmayı anlatacağım ve kullanacağımız paketin adı Zen.Barcode.Rendering.Framework. Bu paket C# kurulumu ile beraber gelen paketlerden olmayıp 3. parti bir paket olduğu için indirip projemize dahil etmemiz gerekiyor. 3. parti paketleri projeye dahil etmenin en kolay ve hızlı yolu Nuget gibi bir paket yöneticisi kullanmak olacaktır. Nuget, Visual Studio kurulumu ile beraber gelen bir paket yöneticisi ve Visual Studio üzerinde gömülü bir terminal üzerinden komutlar girerek çalışmakta. Visual Studio üzerinden Tools > Nuget Package Manager > Package Manager Console adımlarını izleyerek Nuget terminalini açabilirsiniz. Zen.Barcode.Rendering.Framework paketini Nuget ile indirip projeye dahil etmek için ise şöyle bir komut girmemiz gerekiyor;

install-package Zen.Barcode.Rendering.Framework

Bu komutun ardından Nuget, Zen.Barcode.Rendering.Framework paketini indirecek ve projeye dahil edecektir. Paketi indirip projeye dahil etmiş olsakta henüz kullanamamaktayız. Kullanabilmek için kod yazacağımız C# dosyasını açarak dosyanın en başına

using Zen.Barcode;

satırını eklememiz gerekiyor. Bu satırı da ekledikten sonra artık Zen.Barcode.Rendering.Framework paketini kullanarak barkod işlemleri yapabiliriz.

Öncelikle dışarıdan barkod oluşturacağımız veriyi almamız gerekiyor ve oluşturulan barkodu da bir tane PictureBox üzerinde gösterelim. Bunun için form üzerine bir tane TextBox, bir tane Button ve bir tane de PictureBox ekleyelim. Yani şöyle bir tasarım yapalım;

csharp barkod olusturma 1
C# Barkod Oluşturma – Form Tasarımı

Buradaki TextBox ile dışarıdan veri alacağız ve Barkod Oluştur yazan butona tıklandığında barkodu oluşturup üst kısımda bulunan PictureBox’ta barkodu göstereceğiz. Butona tıklandıktan sonra kod çalıştırmak için butonun Click olay yönlendiricisini (event) oluşturmamız gerekiyor. Bunun için butona çift tıklayabilir yada butonu mouse ile seçtikten sonra Properties ekranından Events kısmına geçerek Click satırına çift tıklayabiliriz. Bundan sonra butonun Click metodunun içerisine geçiş yapalım ve kodlarımızı yazmaya hazır olalım.

Zen.Barcode.Rendering.Framework paketi ile barkod oluşturmak için Code128BarcodeDraw sınıfını kullanacağız. Tabi kullanabilmek için öncelikle yeni bir nesnesini türetmemiz gerekiyor. Yeni bir nesnesini türetebilmek için constructor metodu yerine BarcodeDrawFactory sınıfı altındaki static tipte bulunan Code128WithChecksum propertysini kullanacağız. Bu property zaten Code128BarcodeDraw nesnesi türünde olduğu için dolaylı yoldan Code128BarcodeDraw nesnesi oluşturmuş olacağız.

Code128BarcodeDraw barcode = BarcodeDrawFactory.Code128WithChecksum;

Barkod oluşturan sınıftan yeni bir nesne türettiğimize göre artık barkod oluşturabiliriz. Bunun için barcode nesnesi altındaki Draw() fonksiyonunu kullanacağız. Bu fonksiyon string tipte barkod oluşturulacak veri ve int tipte bar yüksekliği olmak üzere 2 tane parametre istiyor ve geriye Image tipinde nesne döndürüyor. İkinci parametre yani bar yüksekliği genel olarak 50 veriliyor, bizde o şekilde verelim. Birinci parametrede barkod oluşturulacak veri ise form üzerinde bulunan TextBox’a girilen veri olacağı için doğrudan TextBox’ta yazan veriyi gönderebiliriz. Fakat gönderdiğimiz verinin null yani boş olmaması gerekiyor. null olarak gönderirsek Draw() fonksiyonu hata vereceğinden öncelikle TextBox’a yazılan verinin null olup olmadığını kontrol etmemiz gerekiyor, null değilse Draw() fonksiyonunu çağıracağız. TextBox içerisine yazılan veriyi TextBox nesnesi altındaki Text propertysi ile alıyoruz ve bu property string tipte oluyor. String bir verinin null olup olmadığını string.IsNullOrEmpty() fonksiyonu ile kontrol edebiliyoruz. Bu fonksiyon string tipte bir tane parametre istiyor ve gönderdiğimiz parametre null ise true, değilse false döndürüyor. Biz TextBox’ta kullanıcının yazdığı verinin null olup olmadığını kontrol etmek istediğimiz için parametre olarak textBox1.Text göndermemiz yeterli olacaktır. Ayrıca Draw() fonksiyonu geriye Image nesnesi döndürdüğü için döndürdüğü değeri doğrudan PictureBox üzerinde gösterebiliriz. PictureBox üzerinde resim göstermek içinde PictureBox nesnesi altındaki Image propertysine atama yapmamız gerekiyor.

if (!string.IsNullOrEmpty(textBox1.Text))
    pictureBox1.Image = barcode.Draw(textBox1.Text, 50);

Kodlarımızı tamamladık, örneğin TextBox içerisine SoftwareSup.Net yazalım ve bi test edelim;

csharp barkod olusturma 2
C# Barkod Oluşturma – Örnek Kod

Evet C# ile Zen.Barcode.Rendering.Framework paketini kullanarak barkod oluşturma işlemi bu şekilde yapılmakta. Yazdığımız kodları daha toplu olması için aşağıya bırakıyorum;

private void button1_Click(object sender, EventArgs e)
{
    Code128BarcodeDraw barcode = BarcodeDrawFactory.Code128WithChecksum;
    if (!string.IsNullOrEmpty(textBox1.Text))
        pictureBox1.Image = barcode.Draw(textBox1.Text, 50);
}

Tüm C# yazılarımıza buraya tıklayarak ulaşabilirsiniz. Herkese hayırlı günler.

Skorumuz:
Oy Vermek İçin Tıklayın
[Toplam: 0 Ortalama: 0]

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu