Google ML Kit Barkod Tarama ve IronBarcode: C# Barkod Kütüphanesi Karşılaştırması
Google ML Kit'in barkod taraması, Android'de gerçekten etkileyicidir. Google Lens'e güç verir, hasar görmüş ve kısmen gizlenmiş kodları işler, cihaz üzerinde ağ çağrısı olmadan çalışır ve geniş bir 1D ve 2D format yelpazesini destekler. .NET geliştiricileri bir barkod kütüphanesi karşılaştırmasında bunu fark ettiğinde bu bilgiler doğrudur. Karşılaştırma makalelerinin sıklıkla göz ardı ettiği şey, ML Kit'in bir .NET SDK'sı, bir NuGet paketi ve bir C# API'si olmamasıdır. Bu makale, bir listede ML Kit'i bulan ve tatbikatta 'bir .NET projesinde ML Kit kullanmak' ne anlama geliyor ve yönetilen kod eşdeğeri nasıl görünüyor anlaması gereken geliştiriciler için.
Google ML Kit Barkod Tarama Nedir
Google ML Kit Barkod Tarama, yerel bir mobil kütüphanedir. Çevresinde çalışılacak bir sınırlama değildir; ürünün tasarımıdır. ML Kit iki tatta gelir:
- Android: Google Maven aracılığıyla
com.google.mlkit:barcode-scanningolarak dağıtılır (Kotlin/Java). Hedef cihazda Google Play Hizmetleri gerektirir. Kamera çerçevelerinden, dosya URI'larından veya bit eşlemlerinden oluşturulanInputImagenesnelerini işler. - iOS: CocoaPods aracılığıyla
GoogleMLKit/BarcodeScanningolarak, bir Firebase bağımlılığı ile dağıtılır. Swift veya Objective-C kullanır.
dotnet add package google-mlkit-barcode yok. using Google.MLKit.BarcodeScanning; yok. Google, ML Kit için bir .NET bağı yayımlamaz.
Topluluk tarafından sürdürülen Xamarin bağımlılıkları çeşitli zamanlarda varolmuştur, ancak tutarlı bir sorun yaşarlar: ML Kit, Android ve iOS SDK'larını sık sık günceller ve bireyler veya küçük ekipler tarafından sürdürülen bağ projeleri genellikle geride kalır veya altyapı değiştiğinde tamamen bozulur. 2026 itibarıyla ML Kit'in barkod tarayıcısını kapsayan, aktif olarak sürdürülen, üretime hazır bir .NET NuGet paketi yoktur.
ML Kit'in İyi Yaptıkları
ML Kit'in barkod karşılaştırmalarında neden göründüğünü anlamak yararlıdır. Yerel Android'de:
- Cihaz üzerinde çıkarım: Sunucuya gidiş-dönüş yok. ML Kit'in modeli, yanında Google Play Hizmetleri kullanarak yerel olarak çalışır, bu da düşük gecikme ve tarama sırasında ağ bağımlılığı yokluğu demektir.
- Hasar toleransı: ML modeli, birçok eşik tabanlı dekoderden daha iyi bir şekilde hasarlı, kısmen gizlenmiş veya düşük çözünürlüklü barkodları işler. Bu, tüketiciye yönelik uygulamaların gerçek dünyadaki kodları taraması için gerçek bir farklılaştırıcıdır.
- Google Lens entegrasyonu: ML Kit'in tarayıcısı, Google Lens barkod algılamasına güç veren aynı yapıdadır. Bu güçlü bir kalite sinyalidir.
- Mobilde format genişliği: QR Kod, EAN-13, EAN-8, Code 128, Code 39, Code 93, Codabar, ITF, PDF417, Data Matrix,Aztekve UPC-A/UPC-E yerel olarak desteklenir.
- Sıfır yapılandırma: Üç satırlık bir Kotlin kod parçası, eşik ayarlamaya veya bir dekoder stratejisi seçmeye gerek kalmadan çalışan bir tarayıcı üretebilir.
Bunlar meşru güçlü yönlerdir. .NET geliştirici için sorun, ML Kit'in kötü olması değil — önemli bir çalışma olmadan onlara ulaşılabilir olmamasıdır.
.NET Geliştirme Gerçekliği
Bir .NET geliştiricisi barkod taraması gerektiğinde, ML Kit yolu uygulamada şu şekilde görünür:
Async/await C# API'si yok. ML Kit, Android'in Task API'sini addOnSuccessListener ve addOnFailureListener geri çağrıları ile kullanır. Bunlar, .NET'in Task<t> ve await ile örtüşmez. Herhangi bir bağ katmanı, geri çağrı tabanlı Android işlevsizliği ve .NET'in TPL'yi adapte etmelidir — topluluk bağımlılıklarının tutarsız bir şekilde başa çıktığı, gayri-tesir bir çeviri.
.NET bağımlılık enjeksiyonu entegrasyonu yok. BarcodeScanning.getClient(options), bir Android BarcodeScanner nesnesi döndüren statik bir fabrika çağrısıdır. Kayıt edilecek bir .NET arabirimi yok, IServiceCollection.AddBarcodeScanner() yok, ASP.NET Core ara yazılıma veya Azure Functions'a enjeksiyon yapmanın bir yolu yok.
ASP.NET Core veya Azure İşlev desteği yok. ML Kit, Android veya iOS çalışma zamanı bağlamı gerektirir. Linux'taki bir web API sürecinde, bir Azure İşlevinde, Windows Server'da veya bir Docker konteynerinde çalışamaz. Eğer kullanım alanınız sunucu tarafı barkod işleme ise — bir resim kabul eden ve barkod verileri döndüren bir REST uç noktası, bir belge işleme hattı, bir toplu iş — ML Kit herhangi bir bağlam erişimi olsun olmasın mimari olarak uyumsuzdur.
Sadece kamera veya çerçeve girişi — dosya yok, PDF yok. ML Kit'in InputImage bir Bitmap, bir ByteBuffer veya Android dosya sisteminde bir dosya URI'sinden oluşturulabilir. PDF belgeleri işleme, sayfalar arasında yineleme yapma veya çok sayfalı TIFF işleme kavramı yoktur. Sunucu tarafı belge işleme tamamen ürünün kapsamı dışındadır.
Google Play Hizmetleri bağımlılığı. Cihaz üzerinde ML modeli, Google Play Hizmetleri aracılığıyla çalışır. Google Play Hizmetleri bulunmayan cihazlar — özel Android yapıları, belirli kurumsal cihazlar, Amazon Fire tabletler — varsayılan ML Kit yapılandırmasını kullanamaz. "Paketlenmiş" model seçeneği (com.google.mlkit:barcode-scanning-bundled) bunu aşar ancak APK boyutunu önemli ölçüde artırır.
Android ML Kit Kodunu .NET'e Port Etme
Eğer ML Kit barkod taraması içeren bir Android uygulamanız varsa ve bunu .NET MAUI veya .NET 9'a taşınıyorsanız, işte çevirisi. Kotlin kodu, ML Kit'in geri çağrı desenini kullanıyor; C# kodu, IronBarcode'un senkron API'sini kullanıyor.
// Android Kotlin: ML Kit
val options = BarcodeScannerOptions.Builder()
.setBarcodeFormats(Barcode.FORMAT_QR_CODE, Barcode.FORMAT_CODE_128)
.build()
val scanner = BarcodeScanning.getClient(options)
val inputImage = InputImage.fromFilePath(context, uri)
scanner.process(inputImage)
.addOnSuccessListener { barcodes ->
for (barcode in barcodes) {
val rawValue = barcode.rawValue
val format = barcode.format
}
}
.addOnFailureListener { e -> Log.e("MLKit", e.message ?: "") }
// .NET C#: IronBarcode
// NuGet: dotnet add package IronBarcode
using IronBarCode;
var results = BarcodeReader.Read("captured-image.jpg");
foreach (var barcode in results)
{
Console.WriteLine($"{barcode.Format}: {barcode.Value}");
}
// .NET C#: IronBarcode
// NuGet: dotnet add package IronBarcode
using IronBarCode;
var results = BarcodeReader.Read("captured-image.jpg");
foreach (var barcode in results)
{
Console.WriteLine($"{barcode.Format}: {barcode.Value}");
}
Imports IronBarCode
Dim results = BarcodeReader.Read("captured-image.jpg")
For Each barcode In results
Console.WriteLine($"{barcode.Format}: {barcode.Value}")
Next
Yapısal farkı sintakstan daha fazladır. ML Kit sürümü bir tarayıcı nesnesi kurar, bir InputImage oluşturur, scanner.process() çağırır ve başarı ve başarısızlık geri çağrıları kaydeder. Devam etmeden önce sonuca ihtiyaçınız varsa, geri çağrı yürütmesini geri kalan mantığınızla koordine etmelisiniz — genellikle Java'da bir CountDownLatch veya Kotlin'de eş yordamlar aracılığıyla.
IronBarcode'un BarcodeReader.Read() senkron olarak bir sonuç koleksiyonu döndürür. Onu hemen yineleyebilirsiniz. Geri çağrı kayıtları yok, iş parçacığı senkronizasyonu yok, yönetilecek ayrı bir tarayıcı nesnesi yok.
Android kodunu taşıyan ekipler için çoklu barkod senaryoları için desen çevirisi şu şekilde görünür:
// .NET C#:IronBarcode— reading multiple barcodes with options
using IronBarCode;
var options = new BarcodeReaderOptions
{
Speed = ReadingSpeed.Balanced,
ExpectMultipleBarcodes = true,
ExpectedBarcodeTypes = BarcodeEncoding.QRCode | BarcodeEncoding.Code128
};
var results = BarcodeReader.Read("image.jpg", options);
foreach (var barcode in results)
{
Console.WriteLine($"Format: {barcode.Format}, Value: {barcode.Value}");
}
// .NET C#:IronBarcode— reading multiple barcodes with options
using IronBarCode;
var options = new BarcodeReaderOptions
{
Speed = ReadingSpeed.Balanced,
ExpectMultipleBarcodes = true,
ExpectedBarcodeTypes = BarcodeEncoding.QRCode | BarcodeEncoding.Code128
};
var results = BarcodeReader.Read("image.jpg", options);
foreach (var barcode in results)
{
Console.WriteLine($"Format: {barcode.Format}, Value: {barcode.Value}");
}
Imports IronBarCode
Dim options As New BarcodeReaderOptions With {
.Speed = ReadingSpeed.Balanced,
.ExpectMultipleBarcodes = True,
.ExpectedBarcodeTypes = BarcodeEncoding.QRCode Or BarcodeEncoding.Code128
}
Dim results = BarcodeReader.Read("image.jpg", options)
For Each barcode In results
Console.WriteLine($"Format: {barcode.Format}, Value: {barcode.Value}")
Next
ExpectedBarcodeTypes bayrağı, ML Kit'in setBarcodeFormats() eşdeğeridir. Onu ayarlamak aramayı daraltır ve performansı iyileştirir, ancak ML Kit'in aksine, ayarlanmaması okuma başarısızlığına neden olmaz —IronBarcodetüm desteklenen formatları deneyecektir.
Format Kapsam Karşılaştırması
Her iki araç da ana akım 2D ve 1D formatları kapsar. Örtüşme önemli derecede.
| Format | ML Kit (Android) | IronBarcode |
|---|---|---|
| QR Kod | Evet | Evet |
| EAN-13 | Evet | Evet |
| EAN-8 | Evet | Evet |
| UPC-A | Evet | Evet |
| UPC-E | Evet | Evet |
| Kod 128 | Evet | Evet |
| Kod 39 | Evet | Evet |
| Kod 93 | Evet | Evet |
| Codabar | Evet | Evet |
| ITF | Evet | Evet |
| PDF417 | Evet | Evet |
| Data Matrix | Evet | Evet |
| Aztek | Evet | Evet |
| Kod 11 | Hayır | Evet |
| MSI Plessey | Hayır | Evet |
| Farmakod | Hayır | Evet |
| 5'in Üzerindeki Çift | ITF ile | Evet |
| RSS-14 / GS1 Databar | Hayır | Evet |
| Mikro QR | Hayır | Evet |
| MaxiCode | Hayır | Evet |
IronBarcode, hem okuma hem de oluşturma için 50'den fazla kodlama türünü destekler. ML Kit'in format listesi, Google'ın model ile birlikte sunduğu şeylere sabittir—özelleştirilebilir simboojlar eklenemez.
IronBarcode'un Ekledikleri
Okumanın ötesinde,IronBarcodetüm barkod iş akışını kapsar:
Oluşturma. ML Kit'in hiçbir oluşturma API'si yoktur — barkodları okur, oluşturmaz. IronBarcode, desteklenen herhangi bir formatı PNG, JPEG, SVG, HTML veya ikili veri olarak oluşturur.
// Generate aKod 128barcode to file
BarcodeWriter.CreateBarcode("SHIP-20240312-7834", BarcodeEncoding.Code128)
.SaveAsPng("shipping-label.png");
// Generate aKod 128barcode to file
BarcodeWriter.CreateBarcode("SHIP-20240312-7834", BarcodeEncoding.Code128)
.SaveAsPng("shipping-label.png");
' Generate a Code 128 barcode to file
BarcodeWriter.CreateBarcode("SHIP-20240312-7834", BarcodeEncoding.Code128) _
.SaveAsPng("shipping-label.png")
QR kodu özelleştirme. QRCodeWriter, logo yerleştirme, renk değişiklikleri ve hata düzeltme seviyelerini destekler — ML Kit'in eşdeğeri olmayan özellikler, çünkü ML Kit hiçbir şey oluşturmaz.
// QR code with embedded logo and custom color
QRCodeWriter.CreateQrCode("https://example.com/product/4821", 500)
.AddBrandLogo("company-logo.png")
.ChangeBarCodeColor(System.Drawing.Color.DarkBlue)
.SaveAsPng("product-qr.png");
// QR code with embedded logo and custom color
QRCodeWriter.CreateQrCode("https://example.com/product/4821", 500)
.AddBrandLogo("company-logo.png")
.ChangeBarCodeColor(System.Drawing.Color.DarkBlue)
.SaveAsPng("product-qr.png");
' QR code with embedded logo and custom color
QRCodeWriter.CreateQrCode("https://example.com/product/4821", 500) _
.AddBrandLogo("company-logo.png") _
.ChangeBarCodeColor(System.Drawing.Color.DarkBlue) _
.SaveAsPng("product-qr.png")
PDF işleme. BarcodeReader.Read("document.pdf"), bir PDF'nin her sayfasından yerel olarak barkodları okur. Görüntü çıkarma aşaması yok, ayrı bir PDF kütüphanesiyle sayfa-dosyası döngüsü yok — PDF'leri doğrudan işler.
// Read all barcodes from every page of a PDF
var results = BarcodeReader.Read("invoice-batch.pdf");
foreach (var barcode in results)
{
Console.WriteLine($"Page {barcode.PageNumber}: {barcode.Value}");
}
// Read all barcodes from every page of a PDF
var results = BarcodeReader.Read("invoice-batch.pdf");
foreach (var barcode in results)
{
Console.WriteLine($"Page {barcode.PageNumber}: {barcode.Value}");
}
Imports System
' Read all barcodes from every page of a PDF
Dim results = BarcodeReader.Read("invoice-batch.pdf")
For Each barcode In results
Console.WriteLine($"Page {barcode.PageNumber}: {barcode.Value}")
Next
Sunucu tarafı ve bulut. IronBarcode, Windows, Linux, macOS, Docker,Azure İşlevlerive AWS Lambda üzerinde çalışır. Google Play Hizmetleri gereksinimi yok, kamera yok, mobil çalışma zamanı yok.
İkili çıktı. .ToPngBinaryData() doğrudan bir byte[] döndürür — disk üzerine yazılmadan HTTP yanıtları olarak barkod görüntüleri döndüren API'ler için kullanışlıdır.
// Generate barcode and return as byte array (e.g., in a web API)
byte[] barcodeBytes = BarcodeWriter.CreateBarcode("ORDER-8821", BarcodeEncoding.QRCode)
.ToPngBinaryData();
// Generate barcode and return as byte array (e.g., in a web API)
byte[] barcodeBytes = BarcodeWriter.CreateBarcode("ORDER-8821", BarcodeEncoding.QRCode)
.ToPngBinaryData();
' Generate barcode and return as byte array (e.g., in a web API)
Dim barcodeBytes As Byte() = BarcodeWriter.CreateBarcode("ORDER-8821", BarcodeEncoding.QRCode) _
.ToPngBinaryData()
Özellik Karşılaştırması
| Özellik | Google ML Kit Barkod | IronBarcode |
|---|---|---|
| .NET / C# API | Hiçbiri (NuGet paketi yok) | Evet — using IronBarCode; |
| NuGet paketi | None | IronBarcode |
| Barkod okuma | Evet (yalnızca Android/iOS) | Evet (tüm platformlar) |
| Barkod üretimi | Hayır | Evet (50+ format) |
| QR kod uretimi | Hayır | Evet |
| QR logo yerleştirme | Hayır | Evet |
| PDF giriş desteği | Hayır | Evet (yerel) |
| Dosya girişi (PNG/JPEG) | Evet (InputImage URI üzerinden) | Evet |
| Kamera / kare girişi | Evet (öncelikli kullanım durumu) | Görüntü dosyası ile |
| Sunucu tarafi işleme | Hayır | Evet |
| ASP.NET Core desteği | Hayır | Evet |
| Azure İşlevleri | Hayır | Evet |
| Docker / Linux | Hayır | Evet |
| Windows uygulama desteği | Hayır (yalnızca Android/iOS) | Evet |
| Google Play Hizmetleri bağımlılığı | Evet (standart model) | Hayır |
| Firebase bağımlılığı (iOS) | Evet | Hayır |
| Async/await C# API | Hayır | Senkron ( .NET modeline uygun) |
| Tek bir görüntüde çoklu barkod | Evet | Evet |
| Community .NET binding | Resmi olmayan, kararsız | N/A (yerel .NET) |
| Fiyatlandırma | Ücretsiz (Google Play'in bir parçası olarak) | $749 ile süresiz |
API Kavram Haritalaması
Resmi bir .NET ML Kit API'si olmadığından, bu haritalama kavramsaldır — her ML Kit işleminin amacını veIronBarcodeeşdeğerini gösterir.
| ML Kit (Kotlin/Java kavramı) | IronBarcode (.NET C#) |
|---|---|
BarcodeScannerOptions.Builder() |
new BarcodeReaderOptions { } |
.setBarcodeFormats(FORMAT_QR_CODE) |
ExpectedBarcodeTypes = BarcodeEncoding.QRCode |
BarcodeScanning.getClient(options) |
Statik — tarayıcı nesnesi gerekmez |
InputImage.fromFilePath(context, uri) |
Dosya yolu dizesi BarcodeReader.Read()'ya geçirildi |
InputImage.fromBitmap(bitmap, rotation) |
BarcodeReader.Read(stream) veya byte dizisi aşırı yükleme |
scanner.process(inputImage) |
BarcodeReader.Read(path, options) |
.addOnSuccessListener { barcodes -> } |
Read() dönüş değeri — doğrudan yinele |
.addOnFailureListener { e -> } |
Standart try/catch |
barcode.rawValue |
barcode.Value |
barcode.format |
barcode.Format |
barcode.boundingBox |
barcode.BarcodeImage (bölge verisi) |
Barcode.FORMAT_QR_CODE |
BarcodeEncoding.QRCode |
Barcode.FORMAT_CODE_128 |
BarcodeEncoding.Code128 |
| Üretim API'si yok | BarcodeWriter.CreateBarcode() |
| Üretim API'si yok | QRCodeWriter.CreateQrCode() |
Speed / model seçimi |
ReadingSpeed.Balanced / .Faster / .Detailed |
Ne ZamanIronBarcodeDüşünmeli
Bir Android uygulamasını .NET MAUI veya .NET 9'a taşıma. Android uygulamanız barkod tarama için ML Kit kullanıyorsa ve .NET eşdeğerini oluşturuyorsanız,IronBarcodedoğal hedeftir. Kavram çevirisi basittir — bir dosyayı okuyun, sonucu alın, değerleri yineleyin.
Sunucu tarafı barkod işleme. Barkodları tarayan bir HTTP uç noktası, yüklenen görüntüleri işleyen bir arka plan işi veya PDF'lerden kodları çıkaran bir belge iş akışı içeren herhangi bir senaryo. ML Kit bunların hiçbirine katılamaz.
Windows masaüstü uygulamaları. WinForms, WPF veya Windows'da .NET MAUI. ML Kit Windows'da hiç çalışmaz.
Google Play Hizmetleri olmayan ortamlar. Android dağıtımınız Google Play Hizmetleri olmayan cihazları içeriyorsa — işletme donanımı, özel AOSP yapıları, Amazon Fire cihazları — standart ML Kit modeli mevcut değildir. IronBarcode'un böyle bir bağımlılığı yoktur.
Okuma ile birlikte oluşturma. Hem barkod oluşturmanız hem de okumanız gerekiyorsa — örneğin, sevkiyat etiketlerini basmak ve taramaları doğrulamak —IronBarcodeher ikisini de aynı kütüphanede işler. ML Kit ne oluşturmayı ne de sunucu tarafı okumayı işler.
Azure veya AWS dağıtımı. Azure Functions, Linux üzerinde Azure App Service, AWS Lambda — bunların hiçbiri ML Kit barındıramaz.IronBarcodehepsini hedefler.
Lisanslama ve Fiyatlandırma
Google ML Kit Barkod Tarama, Android ve iOS uygulamaları için ücretsizdir. Tarama başına ücret yoktur ve ticari lisans gerektirmez. Bu fiyatlandırma modeli, tasarlandığı bağlamda anlamlıdır — Google Play Hizmetleri ile paketlenmiş yerel bir mobil kütüphane.
IronBarcode, süresiz lisanslı ticari bir .NET kütüphanesidir:
- Lite: $749 — 1 geliştirici, 1 proje konumu
- Plus: $1,499 — 3'e kadar geliştirici
- Professional: $2,999 — 10'a kadar geliştirici
- Unlimited: $5,999 — sınırsız geliştirici
Zaman sınırlaması olmayan bir ücretsiz deneme mevcuttur; deneme, oluşturulan barkodları damgalama suyu ile belirtir. Belgeleri işleme sunucu altyapısı için zaten ödeme yapan ekipler için, lisans maliyeti genellikle resmi olmayan bir ML Kit binding'inin sürdürülmesi için gereken mühendislik çabasının küçük bir kısmıdır.
Sonuç
Google ML Kit Barkod Tarama, tasarlandığı şeyi çok iyi yapan bir kütüphanedir: Android ve iOS cihazlarında barkodları hızlı ve doğru bir şekilde taramak.IronBarcodeile karşılaştırma, hangi kütüphanenin daha iyi olduğundan ziyade, hangi kütüphanenin ihtiyaçınız olan bağlamda olduğunu daha çok ilgilidir.
Android için Kotlin yazıyorsanız ve kameradan tarama yapıyorsanız, ML Kit mükemmel bir seçimdir. .NET için C# yazıyorsanız — ister bir web API'si, bir belge işleme hizmeti, bir Windows uygulaması, bir bulut işlevi veya bir platformlar arası MAUI uygulaması için olsun — Google ML Kit'in sizin için bir teklifi yoktur. NuGet paketi yoktur, C# API'si yoktur ve Google'ın desteklediği bir yolu yoktur. IronBarcode, .NET tarafından desteklenen her platformda hem okuma hem de üretim yapan yerel bir .NET kütüphanesidir.
Sıkça Sorulan Sorular
Google ML Kit Barkod Taramasi nedir?
Google ML Kit Barkod Taramasi, C# uygulamalarinda barkodlar oluşturmak ve okumak için bir .NET barkod kütüphanesidir. Geliştiriciler .NET projeleri için bir barkod çözümunu degerlendirirken birkac alternatifi arasinda degerlendirirler.
Google ML Kit Barkod Taramasi ile IronBarcode arasindaki temel farklar nelerdir?
IronBarcode, statik, durumsuz bir API kullanir ve örnek yönetimi gerektirmezken, Google ML Kit Barkod Tara'ma tipik olarak kullanımdan önce örnek yaratmayi ve konfigure etmeyi gerektirir. IronBarcode ayrica tüm ortamlarda yerel PDF desteği, otomatik format tanima ve tek anahtarla lisanslama sunar.
IronBarcode, Google ML Kit Barkod Tara'ma'dan daha kolay mi lisanslaniyor?
IronBarcode, hem geliştirme hem de üretim dağıtımlarını kapsayan tek bir lisans anahtarı kullanır. Bu durum, CI/CD hatları ve Docker yapılandırmalarını, SDK anahtarlarını çalıştırma anahtarlarından ayıran lisanslama sistemleriyle karşılaştırıldığında basitleştirir.
IronBarcode, Google ML Kit Barkod Tara'ma'nin desteği olan tüm barkod formatlarini destekliyor mu?
IronBarcode, QR Code, Code 128, Code 39, DataMatrix, PDF417, Aztec, EAN-13, UPC-A, GS1 ve daha fazlası dahil 30'dan fazla barkod sembolojisini destekler. Format otomatik algılama, açık format sayımı gerektirmez.
IronBarcode yerel PDF barkod okuma desteği veriyor mu?
Evet. IronBarcode, BarcodeReader.Read('document.pdf') kullanarak PDF dosyalarından barkodları doğrudan okur, ayrı bir PDF işleme kütüphanesi gerektirmez. Sayfa başına sonuçlar, sayfa numarası, barkod formatı, değeri ve güven skoru içerir.
IronBarcode, Google ML Kit Barkod Tara'ma'ya kiyasla toplu işleme nasil yaklasir?
IronBarcode'un statik yöntemleri durumsuz ve doğal olarak iş parçacığı güvenlidir, Parallel.ForEach'in doğrudan kullanımını sağlar ve iş parçacığı başı örnek yönetimi gerektirmez. Hiçbir fiyatlandırma seviyesi için bant genişliği sınırı yoktur.
IronBarcode hangi .NET sürümlerini destekliyor?
IronBarcode, .NET Framework 4.6.2+, .NET Core 3.1 ve .NET 5, 6, 7, 8 ve 9'u tek bir NuGet paketi içinde destekler. Platform hedefleri arasında Windows x64/x86, Linux x64 ve macOS x64/ARM bulunuyor.
.NET projesine IronBarcode'u nasıl kurarım?
NuGet aracılığıyla IronBarcode'u kurun: 'Install-Package IronBarCode' komutunu Paket Yöneticisi Konsolunda veya CLI'de 'dotnet add package IronBarCode' komutunu çalıştırın. Ek bir SDK yükleyici veya çalışma zamanı dosyaları gerekli değildir.
Google ML Kit ile karsilastirildiginda, IronBarcode'u satis almadan önce degerlendirebilir miyim?
Evet. IronBarcode'ın deneme modu, yalnızca oluşturulan çıktı görüntülerine bir filigran ekleyerek tam çözümlenmiş barkod değerlerini verir. Satın almadan önce kendi belgelerinizde okuma doğruluğunu test edebilirsiniz.
Google ML Kit Barkod Tara'ma ve IronBarcode arasindaki fiyat farki nedir?
IronBarcode, geliştirme ve üretimi kapsayan tek bir geliştirici lisansı için $749'dan başlar. Fiyatlandırma detayları ve hacim seçenekleri, IronBarcode lisanslama sayfasında mevcuttur. Ayrı bir çalışma zamanı lisansı gereksinimi yoktur.
Google ML Kit Barkod Tara'ma'dan IronBarcode'a geçiş yapmak kolay mi?
Google ML Kit Barkod Tara'ma'dan IronBarcode'a geçiş yaptiginizda, temel olarak örnek tabanli API cagri'larini IronBarcode'un statik metodlari ile değiştirmek, lisanslamakla ilgili gereklilikleri kaldirir ve sonuc özellik adlarini guncellersiniz. Cogu geçiş, kod eklemekten ziyade azaltilmasi için yapılır.
IronBarcode, logolu QR kodları üretiyor mu?
Evet. QRCodeWriter.CreateQrCode().AddBrandLogo('logo.png') kullanarak bir QR koduna yerel logolu bir marka resmi ekleyin, yapılandırılabilir hata düzeltme ile. ChangeBarCodeColor() üzerinden renkli QR kodları da desteklenir.

