Modern C# Tarama Kütüphanesi ile Xamarin Çizgikodu Görüntüleri Oluşturup Okuyun
Xamarin barkod çözümleri, perakende, lojistik ve envanter yönetimi alanlarında Android ve iOS uygulamalarını sürdüren mobil geliştiriciler için gerekli olmaya devam etmektedir. Microsoft, Xamarin için resmi desteği Mayıs 2024'te sonlandırsa da, milyonlarca Xamarin uygulaması halen üretimde ve bu uygulamaların hala güvenilir bir şekilde barkod oluşturması, taraması ve çözmesi gerekiyor. IronBarcode, sadece birkaç satır C# kodu ile barkod oluşturma ve barkod okuma işlemlerini gerçekleştiren bir .NET barkod SDK'sıdır. Android, iOS ve Windows platformlarında bir barkod tarayıcı ve barkod üreteci olarak çalışır ve proje geçiş zamanı geldiğinde doğrudan .NET MAUI'ye geçiş yapar.
IronBarcode'un ücretsiz denemesine başlayın ve Xamarin barkod okuyucusunu bugün projenize ekleyin.
Xamarin Uygulamalarında Barkod Tarama Nasıl Çalışır?
Xamarin uygulamasında barkod tarama, bir kamera akışı veya cihazdaki kaydedilmiş bir dosyadan barkod bilgisini alarak, bu verileri kodlanmış bilgiyi çözen bir tarama kütüphanesine ileterek çalışır. Tarihsel olarak, birçok Xamarin geliştiricisi açık kaynaklı ZXing kütüphanesini (Zebra Crossing) kullanarak yeni bir ZXingScannerPage örneği oluşturmuş, bunu gezinme yığınına eklemiş ve barkodları işlemek için OnScanResult olayını yönetmiştir. Bu yaklaşım, Xamarin.Forms'daki temel QR kodu tarama kullanım durumları için işe yararken, ZXing yıllardır anlamlı bir hata düzeltmesi almadığı için düşük ışıkta veya Data Matrix gibi karmaşık formatları decode ederken geliştiriciler sıklıkla hata durumları bildirdi.
IronBarcode, farklı bir yaklaşım benimseyen modern bir barkod tarayıcı SDK'sıdır. IronBarcode, canlı kamera arayüzüyle özel bir tarayıcı sayfası sağlamak yerine, Xamarin uygulamanızın sağlayabileceği herhangi bir kaynak üzerinde çalışır; kamera çekimleri, kullanıcı tarafından yüklenen dosyalar, ekran görüntüleri veya PDF belgeleri. Bu, geliştiricilerin kullanıcı arayuzu ve tarama sureci uzerinde tam kontrol saglamalari gereken Xamarin barkod projeleri icin esnek bir tarama kutuphanesi yapar. BarcodeReader sınıfı, 30'dan fazla barkod ve QR kod formatını destekler ve SDK, düşük ışık koşullarında veya hasarlı barkodlarla barkod tarama performansını artıran yerleşik ön işleme filtreleri içerir.
Xamarin çözümünüze IronBarcode NuGet paketini yükleyerek başlayın:
Install-Package BarCode
BarCode paketi, NuGet üzerinde mevcuttur ve .NET Standard 2.0'i destekler, bu da onu Xamarin.Forms, Xamarin yerel projeleri ve Microsoft'un MAUI çerçevesi ile uyumlu hale getirir. Temel SDK özellikleri için ek platforma özgü NuGet paketleri veya yapılandırma adımları gerekmez, paketi yükleyin ve projenizde hemen test edin.
Xamarin Uygulamasinda Barkodlar ve QR Kodlari Nasıl Oluşturulur?
Etiketleme, veri değişimi veya cihaz ekranında görüntüleme için barkod oluşturmak, IronBarcode'un BarcodeWriter sınıfı ile basittir. Aşağıdaki örnek, hem 1D hem de 2D barkodlar üretmesi gereken Xamarin barkod uygulamaları için yaygın bir örnektir.
using IronBarCode;
// Barcode generation: create a Code 128 barcode for product scanning
// Comment: BarcodeWriter handles all supported encoding formats
var barcode = BarcodeWriter.CreateBarcode(
"PROD-2025-XMR", // Value to encode in the barcode
BarcodeWriterEncoding.Code128, // Barcode format for the scanner
400, 150 // Width and height in pixels
);
// Customize the barcode: add visible text below the barcode image
// Comment: this text helps users verify the encoded value
barcode.AddBarcodeValueTextBelowBarcode();
barcode.SaveAsPng("product_barcode.png");
// Generate a QR code that users can scan with any mobile device camera
// Comment: QR codes are ideal for URLs, contact data, and Wi-Fi config
var qrCode = BarcodeWriter.CreateBarcode(
"https://ironsoftware.com",
BarcodeWriterEncoding.QRCode,
300, 300
);
// Configure margins and export the QR code as image lines of pixels
qrCode.SetMargins(10);
qrCode.SaveAsPng("qr_code.png");
using IronBarCode;
// Barcode generation: create a Code 128 barcode for product scanning
// Comment: BarcodeWriter handles all supported encoding formats
var barcode = BarcodeWriter.CreateBarcode(
"PROD-2025-XMR", // Value to encode in the barcode
BarcodeWriterEncoding.Code128, // Barcode format for the scanner
400, 150 // Width and height in pixels
);
// Customize the barcode: add visible text below the barcode image
// Comment: this text helps users verify the encoded value
barcode.AddBarcodeValueTextBelowBarcode();
barcode.SaveAsPng("product_barcode.png");
// Generate a QR code that users can scan with any mobile device camera
// Comment: QR codes are ideal for URLs, contact data, and Wi-Fi config
var qrCode = BarcodeWriter.CreateBarcode(
"https://ironsoftware.com",
BarcodeWriterEncoding.QRCode,
300, 300
);
// Configure margins and export the QR code as image lines of pixels
qrCode.SetMargins(10);
qrCode.SaveAsPng("qr_code.png");
Imports IronBarCode
' Barcode generation: create a Code 128 barcode for product scanning
' Comment: BarcodeWriter handles all supported encoding formats
Dim barcode = BarcodeWriter.CreateBarcode(
"PROD-2025-XMR", ' Value to encode in the barcode
BarcodeWriterEncoding.Code128, ' Barcode format for the scanner
400, 150 ' Width and height in pixels
)
' Customize the barcode: add visible text below the barcode image
' Comment: this text helps users verify the encoded value
barcode.AddBarcodeValueTextBelowBarcode()
barcode.SaveAsPng("product_barcode.png")
' Generate a QR code that users can scan with any mobile device camera
' Comment: QR codes are ideal for URLs, contact data, and Wi-Fi config
Dim qrCode = BarcodeWriter.CreateBarcode(
"https://ironsoftware.com",
BarcodeWriterEncoding.QRCode,
300, 300
)
' Configure margins and export the QR code as image lines of pixels
qrCode.SetMargins(10)
qrCode.SaveAsPng("qr_code.png")
Barkod Görüntüsünü Çıktı Verin

Yukarıdaki kod, IronBarcode ile sadece birkaç satır kodda barkod oluşturmayı göstermektedir. Kod örneğindeki her yorum, her adımın amacını vurgulamaktadır. Veriyi kodlamak için, BarcodeWriterEncoding enum'undan barkod formatını ve çıktı boyutlarını kabul eder. IronBarcode'un SDK'sı, EAN-13, Code 39, QR kodu, Data Matrix, PDF417 ve Aztec gibi geniş bir kodlama türü yelpazesini destekler. GeneratedBarcode örneği oluşturduktan sonra kapsamlı bir şekilde özelleştirebilirsiniz: boyutları ayarlamak için ResizeTo() metodunu, dolgu ayarlamak için SetMargins() metodunu ve görünür etiketler eklemek için AddAnnotationTextAboveBarcode() metodunu kullanın. Oluşturulan barkodları, Android veya iOS için platforma özgü kod yazmadan PNG, JPEG, GIF, TIFF veya PDF olarak dışa aktarabilirsiniz.
QR kodlarına logo ekleme veya barkod renklerini özelleştirme gibi gelişmiş özellikler için barkod oluşturma eğitimini ve barkod oluşturma kod örnek sayfasını inceleyin.
Bar kodları Kamera ve Dosya Kaynaklarından Nasıl Okunur ve Çözülür?
IronBarcode, cihaz kamerası ile çekilen veya kullanıcının fotoğraf kütüphanesinden seçilen görüntülerden barkod okuma işleminde en fazla katma değeri Xamarin barkod çözümü olarak sunar. Taramasüreci, mükemmel dijital barkodlardan zorlu gerçek dünya kamera çekimlerine kadar her şeyi tutarlı bir yöntemle yönetir.
using IronBarCode;
// Comment: read and decode barcodes from a camera-captured file
var results = BarcodeReader.Read("scanned_photo.png");
// Iterate through each barcode scanning result
foreach (var result in results)
{
// Comment: access the decoded barcode value and format type
string value = result.Value;
string type = result.BarcodeType.ToString();
// Display the scanned barcode data to the user on screen
Console.WriteLine($"Type: {type}, Value: {value}");
}
using IronBarCode;
// Comment: read and decode barcodes from a camera-captured file
var results = BarcodeReader.Read("scanned_photo.png");
// Iterate through each barcode scanning result
foreach (var result in results)
{
// Comment: access the decoded barcode value and format type
string value = result.Value;
string type = result.BarcodeType.ToString();
// Display the scanned barcode data to the user on screen
Console.WriteLine($"Type: {type}, Value: {value}");
}
Imports IronBarCode
' Comment: read and decode barcodes from a camera-captured file
Dim results = BarcodeReader.Read("scanned_photo.png")
' Iterate through each barcode scanning result
For Each result In results
' Comment: access the decoded barcode value and format type
Dim value As String = result.Value
Dim type As String = result.BarcodeType.ToString()
' Display the scanned barcode data to the user on screen
Console.WriteLine($"Type: {type}, Value: {value}")
Next
Barkod Verilerini Okuma

Bu kod parçacığı, okuyucuya bir dosya geçirir ve sonuçlar üzerinde döngü kurar. Her bir BarcodeResult örneği, barkod türü, çözümlenmiş metin, ikili veri, konum koordinatları ve güven puanına erişim sağlar, geliştiricilere üretim uygulama ortamları için ihtiyaç duydukları her şeyi sunar. Desteklenen barkod türlerinin tam listesi için barkod format desteği sayfasına bakınız.
Gerçek dünya kullanım senaryolarında barkod tarama performansının önemli olduğu durumlar — düşük ışıkta depo taraması, hareketli bir konveyörde hasar görmüş barkodların okunması veya tek bir sayfada birden fazla barkodun çözülmesi gibi durumlar için, BarcodeReaderOptions sınıfı, okuma sürecinin her yönünü yapılandırmanıza olanak tanır:
using IronBarCode;
// Comment: configure the barcode reader for challenging conditions
var options = new BarcodeReaderOptions
{
// Comment: balance between scanning speed and accuracy on the device
Speed = ReadingSpeed.Balanced,
// Expect multiple barcodes per page or camera capture
ExpectMultipleBarcodes = true,
// Limit scanning to specific barcode types for faster results
ExpectBarcodeTypes = BarcodeEncoding.QRCode
| BarcodeEncoding.Code128
| BarcodeEncoding.DataMatrix,
// Auto-rotate barcodes captured at any camera angle
AutoRotate = true,
// Apply image filters to improve scanning in poor conditions
ImageFilters = new ImageFilterCollection
{
new SharpenFilter(), // Sharpen blurry camera captures
new ContrastFilter(1.5f) // Boost contrast for low light
}
};
// Comment: read barcodes from a sample image using configured options
var results = BarcodeReader.Read("warehouse_scan.jpg", options);
// Iterate and display results for the user
foreach (var barcode in results)
{
// Output each decoded barcode value from the scanner
Console.WriteLine($"Found: {barcode.Value}");
}
using IronBarCode;
// Comment: configure the barcode reader for challenging conditions
var options = new BarcodeReaderOptions
{
// Comment: balance between scanning speed and accuracy on the device
Speed = ReadingSpeed.Balanced,
// Expect multiple barcodes per page or camera capture
ExpectMultipleBarcodes = true,
// Limit scanning to specific barcode types for faster results
ExpectBarcodeTypes = BarcodeEncoding.QRCode
| BarcodeEncoding.Code128
| BarcodeEncoding.DataMatrix,
// Auto-rotate barcodes captured at any camera angle
AutoRotate = true,
// Apply image filters to improve scanning in poor conditions
ImageFilters = new ImageFilterCollection
{
new SharpenFilter(), // Sharpen blurry camera captures
new ContrastFilter(1.5f) // Boost contrast for low light
}
};
// Comment: read barcodes from a sample image using configured options
var results = BarcodeReader.Read("warehouse_scan.jpg", options);
// Iterate and display results for the user
foreach (var barcode in results)
{
// Output each decoded barcode value from the scanner
Console.WriteLine($"Found: {barcode.Value}");
}
Imports IronBarCode
' Comment: configure the barcode reader for challenging conditions
Dim options As New BarcodeReaderOptions With {
' Comment: balance between scanning speed and accuracy on the device
.Speed = ReadingSpeed.Balanced,
' Expect multiple barcodes per page or camera capture
.ExpectMultipleBarcodes = True,
' Limit scanning to specific barcode types for faster results
.ExpectBarcodeTypes = BarcodeEncoding.QRCode Or BarcodeEncoding.Code128 Or BarcodeEncoding.DataMatrix,
' Auto-rotate barcodes captured at any camera angle
.AutoRotate = True,
' Apply image filters to improve scanning in poor conditions
.ImageFilters = New ImageFilterCollection From {
New SharpenFilter(), ' Sharpen blurry camera captures
New ContrastFilter(1.5F) ' Boost contrast for low light
}
}
' Comment: read barcodes from a sample image using configured options
Dim results = BarcodeReader.Read("warehouse_scan.jpg", options)
' Iterate and display results for the user
For Each barcode In results
' Output each decoded barcode value from the scanner
Console.WriteLine($"Found: {barcode.Value}")
Next
Speed özelliği, hız ve doğruluk arasındaki dengeyi kontrol eder. Yüksek hacimli taramalar için ReadingSpeed.Faster veya zor barkodların maksimum tespiti için ReadingSpeed.Detailed kullanın. ExpectBarcodeTypes konfigürasyonu, tarayıcı SDK'sının hangi formatları kontrol edeceğini sınırlar, yanlış pozitif hata sonuçlarını önler ve performansı iyileştirir. AutoRotate özelliği, cihaz kamerası tarafından tuhaf açılarda yakalanan barkodları otomatik olarak düzeltirken, SharpenFilter ve ContrastFilter, loş koşullarda barkodların taranmasını iyileştirir. Geliştiriciler ayrıca, tarayıcının yakalanan bir sayfanın belirli bir bölgesine odaklanmasını sağlamak için CropArea özelliği aracılığıyla zoom tarzı kırpma kullanabilirler.
PDF okuyucu konfigürasyonlarının tam bir kılavuzu için, görüntülerden barkod okuma kılavuzuna ve BarcodeReaderOptions API referansına bakın. PDF belgelerinden barkod çözümlemesi yapması gereken geliştiriciler, PDF barkod okuma yöntemini de incelemelidir.
Mobil Barcode Çözümü için En İyi Kullanım Senaryoları Nelerdir?
Xamarin barkod ve QR kod tarama çözümleri, birçok sektörde onlarca kullanım senaryosunu destekler. İşte IronBarcode'un, mobil cihazlarda değer sunan hem barkod tarayıcı hem de jeneratör sağladığı en yaygın senaryolar:
Envanter ve depo yönetimi: Android ve iOS cihaz kullanıcıları, ürünler ve raflar üzerindeki barkodları tarayarak stokları gerçek zamanlı olarak takip eder, manuel giriş hata oranlarını azaltır ve hızı artırır. Herhangi bir depo uygulaması, hızlı ve güvenilir barkod taramadan faydalanır. Perakende satış noktası: QR kod taraması, ürün sorgulama, kupon kullanımı ve mobil ödeme işlemlerini hızlandırarak hepsinin kullanıcı tarafından uygulama ekranında görünür olmasını sağlar. Tarayici fonksiyonu hem 1D hem de 2D formatlarini isler. Lojistik ve nakliye: Android ve iOS cihaz filosu genelinde rota doğrulama ve teslimat onayı için paketler üzerindeki barkodları tarama. IronBarcode, barkodları tarayıcı sayfa görünümündeki bükülmüş veya kısmen gizlenmiş etiketlerden bile çözebilir.
- Etkinlik giriş kontrolü: Konferans kapılarında QR kodlarını çözen bir Xamarin uygulaması, anında katılımcı doğrulaması sağlar — varsayılan kağıt biletler veya manuel hesap aramaları gerekmez. Uygulama, her kodu bir saniyeden kısa sürede okur. Sağlık: Hasta bileklikleri, ilaç etiketleri ve laboratuvar örnekleri üzerindeki barkodlar, hata koşullarını önlemek ve kullanıcının doğru tedavi sağlamasını garanti etmek amacıyla mobil cihazlar tarafından taranır. Uygulamadaki her okuma sayfasi, belirli barkod turlerine gore ozellestirilebilir.
IronBarcode, .NET Standard, .NET Core ve .NET MAUI dahil olmak üzere platformlar arasi kapsamli bir barkod tarayici olarak tüm bu Xamarin barkod kullanim durumlarina destek saglar. Üretimde bir Xamarin barkod çözümünü sürdüren geliştiriciler için, IronBarcode sürekli destek, düzenli güncellemeler ve net lisanslama seçenekleri sunar. Xamarin'dan .NET MAUI'ye geçiş yol haritasında olduğunda, IronBarcode sorunsuz bir şekilde geçiş sağlar, kod yeniden yazmaya gerek yoktur. .NET MAUI barkod tarayıcı kılavuzunu adım adım örnek için inceleyin.
Microsoft'un Xamarin projelerini taşıma için geçiş kılavuzu, en son çapraz platform çerçevesine geçiş için ayrıntılı adımlar sunar. Bu Stack Overflow gönderisinde yaygın Xamarin barcode sorunlarını kapsayan topluluk çözümlerine dair faydalı bir bağlantı bulabilirsiniz, ve bu Reddit üzerindeki Xamarin geliştirici topluluğuna yönlendiren bağlantı, platformlar arası mobil barcode okuma yaklaşımları hakkında ek gönderi tartışmalarını barındırır.
Xamarin ile Barkod Tarayıcıya Bugün Başlamanın Yolları Nelerdir?
IronBarcode, Xamarin barkod oluşturma ve barkod taramayı hızlı, güvenilir ve geliştirici dostu hale getirir. 30'dan fazla barkod formatı için destek sağlar, otomatik döndürme ve özelleştirilebilir ön işleme gibi gelişmiş özellikler sunar ve kod satırlarını temiz ve okunabilir tutan akıcı bir C# arabirimi sunar. Çözüm ister basit bir QR kodu örnek uygulaması geliştirmeyi, ister PDF belgelerinden barkod işlemeyi, isterse bir Android uygulaması veya iOS uygulaması için tam kapsamlı bir barkod okuyucu oluşturmayı gerektirsin, IronBarcode tüm bunları tek, iyi belgelemmiş bir kütüphane içinde halleder. API'deki her bir fonksiyon, üretim uygulama ortamlarında açıklık ve kullanım kolaylığı için tasarlanmıştır.
Xamarin projenizde IronBarcode'u test edin, ücretsiz deneme için kaydolun. Üretime hazır olduğunuzda, lisanslama seçeneklerini keşfedin, $749'dan başlayan detaylar için fiyatlandırma sayfasına bağlanın. Satın alma sonrası destek için, geliştiriciler lisans eklentileri sayfası aracılığıyla kapsamlarını özelleştirebilirler.
Sıkça Sorulan Sorular
IronBarcode, Xamarin uygulama geliştirmesine nasil destek saglar?
IronBarcode, Xamarin uygulama geliştiricilerinin sadece birkac satir C# kodu ile barkodlar oluşturmasina, okumasina ve çözümlemesine imkan tanir. Android, iOS ve Windows platformlarini destekleyerek mobil uygulamalarda sorunsuz barkod işlevselligini saglar.
IronBarcode hem barkod tarama hem de oluşturma için kullanilabilir mi?
Evet, IronBarcode hem bir barkod tarayici hem de oluşturucu olarak calisir, geliştiricilerin Xamarin uygulamalarinda kolaylikla barkod oluşturmasina ve okumasina olanak tanir.
IronBarcode hangi barkod turlerini destekler?
IronBarcode, Code 128, Data Matrix ve QR kodlar gibi çeşitli barkod turlerini destekler, bu da onu farkli uygulama ihtiyaçlari için çok yonlu hale getirir.
IronBarcode, .NET MAUI ile uyumlu mu?
Evet, IronBarcode .NET MAUI'ye duzgun bir geçiş saglayacak şekilde tasarlanmistir, bu da Xamarin'den goc ederken devamin destegini ve işlevselligini garanti eder.
IronBarcode, mevcut Xamarin uygulamalari için neden önemlidir?
Microsoft'un Xamarin için resmi desteği sona ererken, IronBarcode mevcut Xamarin uygulamalari için perakende ve lojistik gibi çeşitli sektorlerde barkod işlevselligini surdurmek için guvenilir bir çözüm sunar.
IronBarcode, lojistik ve envanter yönetiminde nasil yardimci olur?
IronBarcode, barkodlari etkin bir şekilde oluşturup çözümleyerek lojistik ve envanter yönetiminde yardimci olur, izleme ve envanter kontrolu gibi süreçleri kolaylastirir.
IronBarcode, hangi platformlari destekler?
IronBarcode, Android, iOS ve Windows platformlarini destekler, bu da onu platformlar arasi barkod uygulamalari için çok yonlu bir arac yapar.




