Tam açıklama: Iron Software, bu karşılaştırmadaki kütüphanelerden biri olan IronQR'ın arkasındaki şirket, geliştirici ilişkileri ekibiyiz. Bununla birlikte, dürüst değerlendirmelerin pazarlama taktiklerinden daha iyi hizmet ettiğine inanıyoruz. Metodolojimizi göstereceğiz, önyargılarımızı kabul edeceğiz ve kodun kendi adına konuşmasına izin vereceğiz. Her C# QR kod kütüphanesini aynı değerlendirme kriterlerine göre çalıştırdık: basit QR üretimi, görüntülerden QR okuma, özelleştirme derinliği, çapraz platform desteği ve lisanslama maliyeti. Aşağıda, .NET ekosistemindeki 11 dikkat çekici QR kod kütüphanesinin bir karşılaştırması yer almaktadır ve ilk denemede projeniz için doğru olanı seçmenize yardımcı olmak üzere tasarlanmıştır. İşte Visual Studio'da inceleyeceğimiz kütüphanelerden biri olan ile üç satır QR üretimi şöyle görünür: IronQR using IronQr; using IronSoftware.Drawing; QrCode qr = QrWriter.Write("https://example.com"); AnyBitmap bitmap = qr.Save(); bitmap.SaveAs("myqr.png"); IronQR Örnek QR Kod Çıktısı Bu basitlik temel gereksinimdir. Gerçek soru, bir depo tarayıcısından hasarlı bir QR kodunu , markalı bir logo yerleştirmek, Linux kapsayıcılarını hedeflemek veya bir toplu işinde binlerce kodu işlemek gerektiğinde ne olduğudur. Kütüphanelerin ayrıldığı ve bu karşılaştırmanın değerini kazandığı yer burasıdır. okumak Özetle: Ana Karşılaştırma Tablosu Derinlemesine dalmadan önce, tam resmi burada bulabilirsiniz. Bu tablo, bir .NET projesi için bir QR kütüphanesi seçerken en önemli boyutları kapsamaktadır. Kütüphane Üret Oku Logo/Stil Mikro QR Çapraz Platform Lisans NuGet İndirmeleri IronQR ✅ ✅ Yapay Zeka destekli ✅ Tam ✅ + RMQR ✅ Win/Mac/Linux/Mobil Ticari (749$+) ~56K QRCoder ✅ ❌ ✅ Orta ✅ ⚠️ Kısmi (System.Drawing) MIT (Ücretsiz) ~68M ZXing.Net ✅ ✅ ❌ Minimal ❌ ⚠️ Bağlantılar aracılığıyla Apache 2.0 (Ücretsiz) ~32M Net.Codecrete.QrCodeGenerator ✅ ❌ ❌ ❌ ✅ MIT (Ücretsiz) ~4.1M SkiaSharp.QrCode ✅ ❌ ✅ Özel şekiller ❌ ✅ MIT (Ücretsiz) ~1.2M Aspose.BarCode ✅ ✅ ✅ ✅ ✅ Ticari (999$+) ~5.4M Syncfusion Barcode ✅ ❌ ✅ Orta ❌ ✅ (UI kontrolü) Ticari (Ücretsiz topluluk) ~2M+ Spire.Barcode ✅ ✅ ✅ Logo yerleştirme ❌ ⚠️ (System.Drawing) Ticari (599$+) ~450K IronBarcode ✅ ✅ ✅ ✅ Mikro QR ✅ Win/Mac/Linux Ticari (749$+) ~1.2M Dynamsoft Barcode Reader ❌ ✅ Yüksek performanslı Uygulanamaz ✅ ✅ Ticari (1.249$+ / yıl) ~250K BarcodeLib ✅ ❌ ❌ ❌ ⚠️ (System.Drawing) Apache 2.0 (Ücretsiz) ~4.5M Tablo 1: 11 .NET QR kod kütüphanesinin temel seçim kriterlerine göre ana karşılaştırması. İndirme sayıları 2026 başı itibarıyla yaklaşık değerlerdir. Bu makalenin geri kalanı, her bir satırı kod, ödünleşimler ve dürüst değerlendirmelerle detaylandırıyor. Bu Kütüphaneleri Nasıl Değerlendirdik? Her kütüphaneyi, gerçek dünya seçim kararlarını ne sıklıkla yönlendirdiklerine göre ağırlıklandırılmış yedi kritere göre değerlendirdik: — Dize, URL ve yapılandırılmış verilerden (vCard'lar, Wi-Fi kimlik bilgileri) QR kodları oluşturabilir mi? QR Üretimi — Görüntülerden, taramalardan veya PDF'lerden QR kodlarını çözebilir mi? Hasarlı veya döndürülmüş kodlarla nasıl başa çıkıyor? QR Okuma — Logo yerleştirme, renk kontrolü, modül şekli stil verme, hata düzeltme yapılandırması Özelleştirme — Standart QR, Mikro QR, RMQR (Dikdörtgen Mikro QR) QR Format Desteği — Windows, Linux, macOS ve Docker kapsayıcılarında System.Drawing hileleri olmadan temiz çalışır mı? Çapraz Platform — Açık kaynak mı, ticari mi, geliştirici başına fiyatlandırma, paket indirimleri Lisanslama ve Maliyet — API referans kalitesi, öğretici kullanılabilirliği, topluluk boyutu, aktif bakım Dokümantasyon ve Ekosistem Tüm kod örnekleri hedeflemektedir ve üst düzey ifadeler kullanır. .NET 10'un ilgili iyileştirmeler getirdiği yerlerde bunları not edeceğiz. .NET 8 (LTS) Hangi QR Kütüphanesini Seçmelisiniz? Bir Karar Çerçevesi Aşağıdaki 11 kütüphane profilini zaten kısıtlamalarınızı biliyorsanız atlayın. İşte hızlı yol: → veya . Her ikisi de MIT lisanslıdır. QRCoder daha fazla oluşturucu ve yük oluşturucuya sahiptir; Net.Codecrete daha hafiftir ve System.Drawing'den tamamen kaçınır. "Sıfır bağımlılıkla ücretsiz olarak QR kodları üretmem gerekiyor." QRCoder Net.Codecrete.QrCodeGenerator → (Yapay Zeka destekli okuma, hasarlı kodlarda en iyi doğruluk), (ücretsiz, savaşta test edilmiş, en geniş format desteği) veya (kurumsal paket, pahalı). "Hem QR kodları üretmem hem de okumam gerekiyor." IronQR ZXing.Net Aspose.BarCode → , veya . Her üçü de çapraz platform dağıtımlarını bozan System.Drawing bağımlılığından kaçınır. "Linux/Docker'a dağıtım yapıyorum ve System.Drawing'i kullanamıyorum." IronQR SkiaSharp.QrCode Net.Codecrete.QrCodeGenerator → ham üretim kıyaslamalarında liderdir. Okuma performansı için yüksek işlem hacimli tarama için özel olarak tasarlanmıştır. "Performans ve bellek ayak izi kritik öneme sahip." SkiaSharp.QrCode Dynamsoft Barcode Reader → Sahip olduğunuzu kullanın. Paketiniz zaten bir tane içerdiğinde başka bir satıcının QR kütüphanesini eklemek, lisanslama veya bakım açısından nadiren mantıklıdır. "Zaten bir Aspose/Syncfusion/Iron Software paketi kullanıyorum." → , açık MAUI ve Blazor entegrasyon kılavuzlarına sahiptir. Microsoft MVP Jeff Fritz, bu tam kalıbın gerçek bir örneği olan Blazor ile IronQR kullanarak bir QR tabanlı dijital kartvizit uygulaması . "Blazor/MAUI mobil bir uygulama geliştiriyorum ve QR taraması yapıyorum." IronQR oluşturdu Karşılaştırılan 11 .NET QR Kod Kütüphanesi 1. IronQR — Çapraz Platform Desteği ile Yapay Zeka Destekli QR Okuma ve Üretim IronQR, Iron Software'ın IronBarcode ürününden ayrı, özel QR kod kütüphanesidir. Öne çıkan özelliği, kusurlu görüntülerden, döndürülmüş, kısmen gizlenmiş veya garip açılardan çekilmiş QR kodlarını tespit eden ve okuyan bir makine öğrenimi modelidir (ONNX tabanlı), genellikle sadece birkaç satır kodla. Ayrıca kolayca QR kod nesneleri oluşturma yeteneğine sahiptir, QR kodlarını görüntülerle stil verme, özel renkler ekleme ve QR görüntünüzü farklı çıktı biçimlerine kaydetme desteği sunar. Üretim: using IronQr; using IronSoftware.Drawing; // Logolu stilize edilmiş bir QR kod üretin var options = new QrOptions(QrErrorCorrectionLevel.High, 20); QrCode qr = QrWriter.Write("https://example.com", options); var style = new QrStyleOptions { Dimensions = 300, Margins = 10, Color = new Color("#2E75B6"), Logo = new QrLogo { Bitmap = AnyBitmap.FromFile("logo.png"), Width = 80, Height = 80 } }; AnyBitmap styledQr = qr.Save(style); styledQr.SaveAs("branded-qr.png"); IronQR Üretilmiş QR Çıktısı Okuma: using IronQr; using IronSoftware.Drawing; var reader = new QrReader(); var input = new QrImageInput(AnyBitmap.FromFile("scanned-qr.jpg")); IEnumerable<QrResult> results = reader.Read(input); foreach (var result in results) Console.WriteLine($"Value: {result.Value}"); IronQR Okuma Çıktısı Yapay zeka modeli, IronQR'ı bu listedeki diğer tüm kütüphanelerden ayıran şeydir. Testlerimizde, ZXing.Net ve temel görüntü işleme okuyucularının hiçbir şey döndürmediği durumlarda bile konferans rozet fotoğraflarından ve açılı akıllı telefon ekran görüntülerinden QR kodlarını başarıyla çözdü. Ödünleşim, paket boyutudur, ONNX modeli ağırlık ekler. Okumaya ihtiyacınız yoksa, IronQR.Slim, ONNX modeli olmadan gelir ve önemli ölçüde daha hafiftir. Güçlü Yönleri: Yapay Zeka destekli okuma, hasarlı, döndürülmüş ve kısmen gizlenmiş QR kodlarını işler ve doğruluğu önceliklendirir QR Kod, Mikro QR ve RMQR (Dikdörtgen Mikro QR) formatlarını destekler Tam stil API'si: renkler, logolar, yuvarlak modüller, kenar boşlukları Çapraz platform: Windows, macOS, Linux, iOS, Android, Docker, Azure, AWS Sunucu iş yükleri için asenkron okuma desteği (ReadAsync) PNG görüntüsü, JPG, çok sayfalı TIFF ve daha fazlası gibi birden fazla formata kaydetme Kullanıcı dostu API kullanımı kolaylaştırır Sınırlamalar: Ticari lisans gereklidir (dağıtım için geliştirici başına 749$+). Tam paket, Yapay Zeka modeli nedeniyle açık kaynak alternatiflerinden daha ağırdır. olgun açık kaynak seçeneklerinden daha düşüktür, daha yeni ürün (yaklaşık 2023'te piyasaya sürüldü) NuGet indirme sayısı Yalnızca üretim projeleri Yapay Zeka ek yükünü gerektirmeyebilir. Hem üretim hem de okuma gerektiren projeler için, özellikle tarama koşullarının kusurlu olduğu yerlerde (mobil uygulamalar, depo taraması, konferans/etkinlik senaryoları). , Blazor ve özel markalama ile gerçek zamanlı QR üretimi ile IronQR'ın kullanımını göstermektedir. En iyi: Jeff Fritz QR kartvizit vaka çalışması 2. — En Popüler Açık Kaynak QR Üreticisi QRCoder QRCoder kütüphanesi, ile NuGet'teki en çok indirilen tek QR kod paketidir. Orijinal olarak Raffael Herrmann tarafından 2013 yılında oluşturulan ve şimdi , yalnızca QR kod (okuma değil) odaklanan saf bir C# uygulamasıdır. 68 milyondan fazla indirme Shane32 tarafından bakımı yapılan üretimine using QRCoder; // QR kodu üretin ve PNG baytları olarak kaydedin using var qrGenerator = new QRCodeGenerator(); using var qrCodeData = qrGenerator.CreateQrCode("https://example.com", QRCodeGenerator.ECCLevel.H); using var pngQrCode = new PngByteQRCode(qrCodeData); byte[] qrCodeImage = pngQrCode.GetGraphic(20); File.WriteAllBytes("qrcoder-output.png", qrCodeImage); QRCoder Çıktı Görüntüsü QRCoder birden fazla oluşturucu sunar: PngByteQRCode (çapraz platform, System.Drawing bağımlılığı yok), QRCode (System.Drawing tabanlı, yalnızca Windows), SvgQRCode, AsciiQRCode ve daha fazlası. Ayrıca Wi-Fi kimlik bilgileri, vCard'lar ve yer imleri gibi yapılandırılmış veriler için yük oluşturucuları içerir, bu da bu dizeleri manuel olarak biçimlendirmenizi önler. Güçlü Yönleri: MIT lisansı, ticari kullanım için tamamen ücretsiz 68M+ NuGet indirme sayısı, büyük topluluk benimsemesi ve kanıtlanmış kararlılık System.Drawing'i kullanmayan bir PngByteQRCode dahil olmak üzere birden fazla oluşturucu seçeneği Yerleşik yük oluşturucuları (Wi-Fi, vCard, coğrafi konum, takvim etkinlikleri) Mikro QR kod desteği .NET Standard hedeflerine sıfır bağımlılık Sınırlamalar: , QR kod resim dosyalarını okuyamaz veya çözemez Yalnızca üretim Bazı oluşturucular (QRCode gibi) .NET 6'dan beri yalnızca Windows'a özgü olan System.Drawing.Common'a bağlıdır Yerleşik olarak logo yerleştirme yok (görüntüyü kendiniz birleştirmelisiniz) Gelişmiş stil yok (modül şekilleri, gradyanlar) Yalnızca QR üretimi gerektiren ve bütçesi sıfır olan projeler için. Wi-Fi QR kodları veya vCard'lar üretmeniz gerekiyorsa ve kodları hiç okumanız gerekmiyorsa, QRCoder çoğu .NET geliştiricisi için pratik varsayılan seçimdir. En iyi: 3. — Barkod Kütüphanelerinin İsviçre Çakısı ZXing.Net ("Zebra Crossing"), orijinal Java ZXing kütüphanesinin . QR Kod, Veri Matrisi, Azteka, PDF 417, UPC, EAN, Kod 128 ve daha fazlası dahil olmak üzere 15'ten fazla barkod formatını destekleyen genel amaçlı bir barkod kütüphanesidir. QR desteği, daha geniş yeteneklerinin bir alt kümesidir. ZXing.Net .NET bağlantısıdır using ZXing; using ZXing.Common; using ZXing.QrCode; // Bir QR kod üretin var writer = new BarcodeWriterPixelData { Format = BarcodeFormat.QR_CODE, Options = new QrCodeEncodingOptions { Height = 250, Width = 250, Margin = 1 } }; var pixelData = writer.Write("https://example.com"); // Bir QR kod okumak için bir bağlantı paketi gerekir (örneğin, ZXing.Net.Bindings.SkiaSharp) ZXing.Net Çıktısı ZXing.Net, oluşturma ve okuma için platforma özgü bağlantı paketleri gerektirir. Temel paket kodlama/kod çözme mantığını sağlar; ZXing.Net.Bindings.Windows.Compatibility, ZXing.Net.Bindings.SkiaSharp veya ZXing.Net.Bindings.ImageSharp'ı hedef platformunuza bağlı olarak eklersiniz. Bu modüler yaklaşım esnektir ancak entegrasyon karmaşıklığı ekler. Güçlü Yönleri: Apache 2.0 lisansı, ticari kullanım için ücretsiz Tek bir kütüphanede hem üretim hem de okuma QR kodlarının ötesinde 15'ten fazla barkod formatını destekler , savaşta test edilmiş, geniş topluluk bilgisi 32M+ NuGet indirme sayısı SkiaSharp, ImageSharp, OpenCV ve daha fazlası için mevcut bağlantılar Sınırlamalar: QR'ye özgü özellikler temeldir, logo yerleştirme yok, gelişmiş stil yok Hasarlı/döndürülmüş QR kodlarındaki okuma doğruluğu, Yapay Zeka destekli çözümlere kıyasla orta düzeydedir Bağlantı paketleri bağımlılık yönetimi karmaşıklığı ekler API tasarımı eski görünüyor, modern .NET kütüphanelerinden daha az akıcı Aktif bakım temposu yavaşladı (topluluk tarafından bakımı yapılıyor) Hem QR kod hem de geleneksel barkod desteği (perakende, lojistik) isteyen ve ücretsiz, kanıtlanmış bir seçenek arayan projeler için. Önceliğiniz stil verme veya Yapay Zeka destekli okuma gibi QR'ye özgü özelliklerse, geniş barkod formatı kapsamından ziyade, özel bir QR kütüphanesi size daha iyi hizmet edecektir. En iyi: 4. Net.Codecrete.QrCodeGenerator — Hafif ve Standartlara Odaklı Net.Codecrete.QrCodeGenerator, Manuel Bleichenbacher tarafından temiz, minimal bir QR kod üretim kütüphanesidir. Project Nayuki'nin Java QR kod oluşturucusunun ve doğruluk ve standart uyumluluğuna ( ) odaklanmıştır. .NET çevirisidir ISO/IEC 18004 using Net.Codecrete.QrCodeGenerator; var qr = QrCode.EncodeText("https://example.com", QrCode.Ecc.Medium); string svg = qr.ToSvgString(4); File.WriteAllText("output.svg", svg); Net.Codecrete.QrCodeGenerator ile Örnek Çıktı Yaklaşık , odaklanmış bir kütüphane için iyi benimsenmiştir. Öne çıkan kalitesi, System.Drawing'e sıfır bağımlılıktır — yerel olarak SVG, XAML yol verisi, PNG ve BMP üretir. Bu, onu çapraz platform .NET projeleri ve Docker'da çalışan ASP.NET Core hizmetleri için mükemmel bir seçenek haline getirir. 4,1 milyon NuGet indirmesiyle Güçlü Yönleri: MIT lisansı, tamamen ücretsiz Sıfır System.Drawing bağımlılığı, gerçekten çapraz platform Küçük ayak izi, hızlı üretim Yerleşik SVG ve XAML çıktısı (WPF, WinUI ve web senaryoları için kullanışlıdır) Tüm 40 QR sürümünün ve tüm 4 hata düzeltme seviyesinin doğru uygulanması Kapsamlı örnek projeler (WinForms, WPF, ASP.NET Core, SkiaSharp, ImageSharp) Sınırlamalar: , QR okuma yeteneği yok Yalnızca üretim Logo yerleştirme veya gelişmiş stil özellikleri yok QRCoder'ın yük oluşturucularına kıyasla sınırlı özelleştirme QRCoder veya ZXing.Net'e kıyasla daha az topluluk içeriği ve öğretici SVG çıktısı ve System.Drawing yükü olmayan, küçük, doğru, çapraz platform QR üreticisine ihtiyaç duyan geliştiriciler için. Dağıtım hedefiniz Linux veya Docker ise ve yalnızca üretim gerekiyorsa, bu kütüphane ciddi olarak düşünülmelidir. En iyi: 5. SkiaSharp.QrCode — Yüksek Performanslı Çapraz Platform Üretimi SkiaSharp.QrCode ( tarafından) SkiaSharp üzerine kurulu, performansa odaklanmış bir QR üretim kütüphanesidir. System.Drawing'in GDI+ sınırlamalarından kaçınmak ve SkiaSharp'ın donanım hızlandırması aracılığıyla yerel düzeyde performans sunmak için özel olarak oluşturulmuştur. guitarrapc using SkiaSharp.QrCode.Image; // Tek satır: üretin ve kaydedin QRCodeImageBuilder.SavePng("https://example.com", "qrcode.png"); // Veya özel ayarlar ile var pngBytes = new QRCodeImageBuilder("https://example.com") .WithSize(512, 512) .WithErrorCorrection(ECCLevel.H) .ToByteArray(); SkiaSharp.QrCode Tek Satır Çıktısı Projenin deposundaki kıyaslama sonuçları, SkiaSharp.QrCode'un üretim görevlerinde QRCoder ve diğer .NET QR kütüphanelerinden hem hız hem de bellek ayırma açısından daha iyi performans gösterdiğini göstermektedir. Ara bellek ayırmalarını önleyerek doğrudan SkiaSharp tuvaline sıfır kopya oluşturma sağlar. Güçlü Yönleri: MIT lisansı, ticari kullanım için ücretsiz Sınıfının en iyisi üretim performansı (kıyaslanmış) Minimum bellek ayırma, yüksek işlem hacimli senaryolar için düşük GC baskısı NativeAOT hazır (.NET Native AOT derleme desteği) Stilize QR kodları için özel modül şekilleri (daireler, yuvarlak dikdörtgenler) Windows, Linux, macOS, iOS, Android, WebAssembly üzerinde çalışır Sınırlamalar: , QR okuma yok Yalnızca üretim SkiaSharp yerel bağımlılıklarını gerektirir (platforma özgü NuGet paketleri) QRCoder veya ZXing.Net'ten daha küçük topluluk Yük oluşturucuları yok (Wi-Fi, vCard), bu dizeleri kendiniz biçimlendirirsiniz Yalnızca UTF-8, ISO-8859-2 veya Shift JIS kodlaması yok Performans ve bellek verimliliğinin en önemli olduğu yüksek işlem hacimli sunucu uygulamaları (örneğin, biletleme sistemleri, toplu etiket üretimi) için QR kodları üretir. Ayrıca projenizde zaten SkiaSharp kullanıyorsanız idealdir. En iyi: 6. Aspose.BarCode — QR