```html Toʻliq oshkor qilish: Biz Iron Software kompaniyasidagi IronQR, taqqoslashdagi kutubxonalardan biri boʻlgan Iron Software kompaniyasining developer relations jamoasi. Shu bilan birga, biz halol baholashlar marketingdan koʻra hammaga yaxshiroq xizmat qiladi deb hisoblaymiz. Biz oʻz metodologiyamizni koʻrsatamiz, tarafkashliklarimizni tan olamiz va kodni oʻziga gaplashishiga qoʻyib beramiz. Biz har bir C# QR kod kutubxonasini bir xil baholash mezonlari boʻyicha ishga tushirdik: oddiy QR generatsiyasi, rasmlardan QR oʻqish, sozlash chuqurligi, platformalararo qoʻllab-quvvatlash va litsenziyalash narxi. Quyida natija keltirilgan, bu .NET ekotizimidagi 11 ta muhim QR kod kutubxonalarining taqqoslanishi boʻlib, sizga birinchi urinishda oʻzingizning loyihangiz uchun toʻgʻri tanlovni amalga oshirishga yordam beradi. Mana, biz koʻrib chiqadigan kutubxonalardan biri boʻlgan yordamida Visual Studio'da uch qatorli QR generatsiyasi qanday koʻrinishini koʻrib chiqing: IronQR using IronQr; using IronSoftware.Drawing; QrCode qr = QrWriter.Write("https://example.com"); AnyBitmap bitmap = qr.Save(); bitmap.SaveAs("myqr.png"); IronQR Misol QR kod chiqishi Bu soddalik stol stol ustida turgan mahsulotdek standart hisoblanadi. Asosiy savol shundaki, omborxonadan skanerlash orqali buzilgan QR kodni oʻqish, brend logotipini joylashtirish, Linux konteynerlarini nishonga olish yoki bir partiyada minglab kodlarni qayta ishlash kerak boʻlganda nima boʻladi. Aynan shu yerda kutubxonalar farqlanadi va ushbu taqqoslash oʻzini oqlaydi. Qisqacha: Asosiy taqqoslash jadvali Qoʻshimcha maʼlumotlarga kirishdan oldin, mana toʻliq rasm. Ushbu jadval .NET loyihasi uchun QR kutubxonasini tanlashda eng muhim oʻlchamlarni aks ettiradi. Kutubxona Generatsiya Oʻqish Logotip/Uslublash Mikro QR Platformalararo Litsenziya NuGet Yuklamalari IronQR ✅ ✅ ML-powered ✅ Toʻliq ✅ + RMQR ✅ Win/Mac/Linux/Mobil Tijoriy ($749+) ~56 ming QRCoder ✅ ❌ ✅ Oʻrtacha ✅ ⚠️ Qisman (System.Drawing) MIT (Bepul) ~68 million ZXing.Net ✅ ✅ ❌ Minimal ❌ ⚠️ Bogʻlanishlar orqali Apache 2.0 (Bepul) ~32 million Net.Codecrete.QrCodeGenerator ✅ ❌ ❌ ❌ ✅ MIT (Bepul) ~4.1 million SkiaSharp.QrCode ✅ ❌ ✅ Maxsus shakllar ❌ ✅ MIT (Bepul) ~1.2 million Aspose.BarCode ✅ ✅ ✅ ✅ ✅ Tijoriy ($999+) ~5.4 million Syncfusion Barcode ✅ ❌ ✅ Oʻrtacha ❌ ✅ (UI boshqaruvchi) Tijoriy (Bepul hamjamiyat) ~2 million+ Spire.Barcode ✅ ✅ ✅ Logotipni joylashtirish ❌ ⚠️ (System.Drawing) Tijoriy ($599+) ~450 ming IronBarcode ✅ ✅ ✅ ✅ Mikro QR ✅ Win/Mac/Linux Tijoriy ($749+) ~1.2 million Dynamsoft Barcode Reader ❌ ✅ Yuqori-perf N/A ✅ ✅ Tijoriy ($1,249+/yil) ~250 ming BarcodeLib ✅ ❌ ❌ ❌ ⚠️ (System.Drawing) Apache 2.0 (Bepul) ~4.5 million Jadval 1: Asosiy tanlov mezonlari boʻyicha 11 ta .NET QR kod kutubxonalarining asosiy taqqoslanishi. Yuklab olish sonlari 2026-yil boshidagi taxminiy maʼlumotlardir. Ushbu maqolaning qolgan qismida har bir qator kodlar, kamchiliklar va halol baholar bilan kengroq tushuntiriladi. Ushbu kutubxonalarni qanday baholadik? Biz har bir kutubxonani yetti mezon boʻyicha baholadik, ularning vazni haqiqiy dunyodagi tanlov qarorlarini qancha tez-tez qabul qilishiga qarab belgilandi: — Satrlar, URL manzillar va tuzilgan maʼlumotlardan (vCards, Wi-Fi maʼlumotlari) QR kodlarni yaratishi mumkinmi? QR Generatsiyasi — Rasmlar, skanerlar yoki PDF fayllaridan QR kodlarni dekodlashi mumkinmi? Buzilgan yoki aylangan kodlarni qanday boshqaradi? QR Oʻqish — Logotipni joylashtirish, rang nazorati, modul shaklini uslublash, xatolarni tuzatish konfiguratsiyasi Sozlash — Standart QR, Mikro QR, RMQR (Toʻrtburchakli Mikro QR) QR Formatini qoʻllab-quvvatlash — Windows, Linux, macOS va Docker konteynerlarida System.Drawing xakelaridan foydalanmasdan toza ishlaydimi? Platformalararo — Ochiq kodli va tijoriy, har bir ishlab chiquvchi uchun narx, toʻplam chegirmalari Litsenziyalash va Narxi — API murojaatnomasi sifati, darsliklarning mavjudligi, hamjamiyat hajmi, faol texnik xizmat Hujjatlar va Eko-tizim Barcha kod misollari ga moʻljallangan va yuqori darajali bayonotlardan foydalanadi. .NET 10 relevant yaxshilanishlarni taqdim etganda, biz ularni qayd etamiz. .NET 8 (LTS) Qaysi QR kutubxonasini tanlash kerak? Qaror qabul qilish tizimi Agar siz allaqachon oʻz chegaralaringizni bilsangiz, quyidagi 11 ta kutubxona profillarini oʻtkazib yuboring. Mana tezkor yoʻl: → yoki . Ikkalasining ham litsenziyasi MIT. QRCoder koʻproq renderlar va yuklash yordamchilariga ega; Net.Codecrete yengilroq va System.Drawing dan butunlay qochadi. "Bepul, hech qanday bogʻlanishlarsiz QR kodlarni yaratishim kerak." QRCoder Net.Codecrete.QrCodeGenerator → (ML-powered oʻqish, buzilgan kodlarda eng yaxshi aniqlik), (bepul, sinovdan oʻtgan, eng keng formatlarni qoʻllab-quvvatlash) yoki (korporativ toʻplam, qimmat). "QR kodlarni ham yaratishIM va oʻqishIM kerak." IronQR ZXing.Net Aspose.BarCode → , yoki . Uchchalasining ham System.Drawing bogʻlanishini chetlab oʻtadi, bu platformalararo joylashtirishlarda muammolarni keltirib chiqaradi. "Men Linux/Docker ga joylashtiryapman va System.Drawing dan foydalana olmayman." IronQR SkiaSharp.QrCode Net.Codecrete.QrCodeGenerator → toʻgʻridan-toʻgʻri generatsiya benchmarklarida yetakchi hisoblanadi. Oʻqish ishlashi uchun esa yuqori oʻtkazuvchanlikni skanerlash uchun maxsus ishlab chiqilgan. "Ishlash va xotira hajmi muhim." SkiaSharp.QrCode Dynamsoft Barcode Reader → Sizda mavjud boʻlgan narsadan foydalaning. Toʻplamingizda allaqachon mavjud boʻlgan QR kutubxonasi bilan boshqa sotuvchining QR kutubxonasini qoʻshish, litsenziyalash yoki texnik xizmat koʻrsatish nuqtai nazaridan kamdan-kam hollarda maʼno kasb etadi. "Men allaqachon Aspose/Syncfusion/Iron Software toʻplamidan foydalanaman." → MAUI va Blazor integratsiyasi uchun aniq qoʻllanmalarga ega. Microsoft MVP Jeff Fritz , bu aynan shu naqshning haqiqiy dunyodagi misolidir. "Men Blazor/MAUI mobil ilovasini QR skanerlash bilan yaratmoqdaman." IronQR IronQR dan Blazor bilan foydalanib QR kodli raqamli biznes kartasi ilovasini yaratgan Taqqoslangan 11 ta .NET QR kod kutubxonasi 1. IronQR — ML-Powered QR Oʻqish va Generatsiya, Platformalararo Qoʻllab-quvvatlash bilan IronQR — bu Iron Software kompaniyasining oʻziga xos QR kod kutubxonasi boʻlib, ularning kengroq IronBarcode mahsulotidan alohida hisoblanadi. Uning eng muhim xususiyati — notoʻgʻri rasmlardan, aylantirilgan, qisman yopiq yoki turli burchaklardan olingan QR kodlarni aniqlash va oʻqish imkonini beruvchi mashinani oʻrganish modeli (ONNX asosida) boʻlib, bu koʻpincha bir necha qator kod bilan amalga oshiriladi. Shuningdek, u osonlik bilan QR kod obʼyektlarini yaratishga qodir, QR kodlarni rasmlar bilan uslublash, maxsus ranglar qoʻshish va QR rasmini turli formatlarda saqlashni qoʻllab-quvvatlaydi. Generatsiya: using IronQr; using IronSoftware.Drawing; // Logotip bilan uslublangan QR kodni yaratish 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 Yaratilgan QR Chiqishi Oʻqish: 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 Oʻqish Chiqishi ML modeli IronQR ni ushbu roʻyxatdagi boshqa barcha kutubxonalardan ajratib turadi. Bizning sinovlarimizda u konferentsiya nishonlari va burchakli smartfon ekranlaridan olingan QR kodlarni muvaffaqiyatli dekodladi, bu yerda ZXing.Net va asosiy tasvirni qayta ishlovchi oʻquvchilar hech qanday natija bermadi. Kamchiligi — paket hajmi, ONNX modeli ogʻirlikni oshiradi. Agar sizga oʻqish kerak boʻlmasa, IronQR.Slim ML modelisiz yuklab olinadi va sezilarli darajada yengilroqdir. Afzalliklari: ML-powered oʻqish buzilgan, aylantirilgan va qisman yopiq QR kodlarni boshqaradi va aniqlikka ustunlik beradi QR kod, Mikro QR va RMQR (Toʻrtburchakli Mikro QR) formatlarini qoʻllab-quvvatlaydi Toʻliq uslublash API: ranglar, logotiplar, yumaloq modullar, cheklovlar Platformalararo: Windows, macOS, Linux, iOS, Android, Docker, Azure, AWS Asinxron oʻqishni qoʻllab-quvvatlash (ReadAsync) server ish yuklari uchun PNG tasvir, JPG, koʻp sahifali TIFF va boshqalar kabi bir nechta formatlarda saqlash Foydalanuvchi uchun qulay API uni ishlatishni osonlashtiradi Cheklovlari: Tijoriy litsenziya talab qilinadi (joylashtirish uchun har bir ishlab chiquvchiga $749+) ML modeli tufayli toʻliq paket ochiq kodli muqobillardan ogʻirroq etuk ochiq kodli variantlardan pastroq, yangi mahsulot (taxminan 2023-yilda ishga tushirilgan) NuGet yuklab olish soni Faqat generatsiya loyihalari uchun ML overheadi kerak boʻlmasligi mumkin Generatsiya va oʻqishni talab qiladigan loyihalar uchun, ayniqsa skanerlash sharoitlari mukammal boʻlmaganda (mobil ilovalar, omborxona skanerlash, konferentsiya/tadbir stsenariylari). Blazor va maxsus brending bilan real vaqtda QR generatsiyasini boshqarishda IronQR ni namoyish etadi. Eng yaxshisi: Jeff Fritz QR biznes kartasi case study 2. — Eng Ommabop Ochiq Kodli QR Generatori QRCoder QRCoder kutubxonasi NuGet'dagi eng koʻp yuklab olingan QR kod paketidir, bilan. Dastlab Raffael Herrmann tomonidan 2013-yilda yaratilgan va hozirda , bu faqat QR kod (oʻqishga emas) yoʻnaltirilgan sof C# ilovasi. 68 milliondan ortiq yuklamalar Shane32 tomonidan qoʻllab-quvvatlanadi generatsiyasiga using QRCoder; // QR kodni yaratish va PNG baytlari sifatida saqlash 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 Chiqish Tasviri QRCoder bir nechta renderlarni taqdim etadi: PngByteQRCode (platformalararo, System.Drawing bogʻlanishsiz), QRCode (System.Drawing asosida, faqat Windows uchun), SvgQRCode, AsciiQRCode va boshqalar. U, shuningdek, Wi-Fi maʼlumotlari, vCards va xatchoʻplar kabi tuzilgan maʼlumotlar uchun yuklash generatorlarini oʻz ichiga oladi, bu sizga ushbu satrlarni qoʻlda formatlashdan tejaydi. Afzalliklari: MIT litsenziyasi, tijoriy foydalanish uchun mutlaqo bepul 68 milliondan ortiq NuGet yuklamalari, katta hamjamiyat tomonidan qoʻllab-quvvatlanadi va ishonchliligi isbotlangan PngByteQRCode (System.Drawing dan foydalanmaydi) ni oʻz ichiga olgan bir nechta render variantlari Oʻrnatilgan yuklash generatorlari (Wi-Fi, vCard, geolokatsiya, kalendar voqealari) Mikro QR kodini qoʻllab-quvvatlash .NET Standard maqsadlari uchun hech qanday bogʻlanishlar yoʻq Cheklovlari: , QR kod rasmlarini oʻqish yoki dekodlash imkoniyati yoʻq Faqat generatsiya Baʼzi renderlar (QRCode kabi) System.Drawing.Common'ga bogʻliq, bu .NET 6 dan boshlab faqat Windows uchun Logotipni joylashtirish oʻrnatilgan emas (tasvirni oʻzingiz qoʻshishingiz kerak boʻladi) Kengaytirilgan uslublash yoʻq (modul shakllari, gradientlar) Faqat QR generatsiyasini talab qiladigan loyihalar uchun, ayniqsa byudjet nol boʻlganda. Agar siz Wi-Fi QR kodlarini yoki vCards ni yaratishni va kodlarni umuman oʻqishni istamasangiz, QRCoder koʻpchilik .NET ishlab chiquvchilari uchun amaliy standart tanlovdir. Eng yaxshisi: 3. — Barcha turdagi shtrix kodlar uchun universal vosita ZXing.Net ("Zebra Crossing") — bu asl Java ZXing kutubxonasining . Bu QR kod, Data Matrix, Aztec, PDF 417, UPC, EAN, Code 128 va boshqalarni oʻz ichiga olgan 15 dan ortiq formatlarni qoʻllab-quvvatlovchi umumiy maqsadli shtrix kod kutubxonasidir. QR qoʻllab-quvvatlashi uning keng imkoniyatlarining bir qismidir. ZXing.Net .NET porti using ZXing; using ZXing.Common; using ZXing.QrCode; // QR kodni yaratish var writer = new BarcodeWriterPixelData { Format = BarcodeFormat.QR_CODE, Options = new QrCodeEncodingOptions { Height = 250, Width = 250, Margin = 1 } }; var pixelData = writer.Write("https://example.com"); // QR kodni oʻqish uchun bogʻlanish paketi talab qilinadi (masalan, ZXing.Net.Bindings.SkiaSharp) ZXing.Net Chiqishi ZXing.Net renderlash va oʻqish uchun platformaga xos bogʻlanish paketlarini talab qiladi. Asosiy paket kodlash/dekodlash logikasini taʼminlaydi; siz target platformangizga qarab ZXing.Net.Bindings.Windows.Compatibility, ZXing.Net.Bindings.SkiaSharp yoki ZXing.Net.Bindings.ImageSharp ni qoʻshasiz. Ushbu modulli yondashuv moslashuvchan, ammo integratsiya murakkabligini oshiradi. Afzalliklari: Apache 2.0 litsenziyasi, tijoriy foydalanish uchun bepul Bir kutubxonada ham generatsiya, ham oʻqish QR kodlardan tashqari 15 dan ortiq shtrix kod formatlarini qoʻllab-quvvatlaydi , sinovdan oʻtgan, keng hamjamiyat bilimiga ega 32 milliondan ortiq NuGet yuklamalari SkiaSharp, ImageSharp, OpenCV va boshqalar uchun bogʻlanishlar mavjud Cheklovlari: QR ga xos xususiyatlar oddiy, logotipni joylashtirish yoʻq, kengaytirilgan uslublash yoʻq Buzilgan/aylantirilgan QR kodlarni oʻqish aniqligi ML-powered yechimlar bilan taqqoslaganda oʻrtacha Bogʻlanish paketlari bogʻlanishlarni boshqarish murakkabligini oshiradi API dizayni uning yoshini koʻrsatadi, zamonaviy .NET kutubxonalaridan kamroq ravon Faol texnik xizmat koʻrsatish surʼati sekinlashgan (hamjamiyat tomonidan boshqariladi) QR kod va anʼanaviy shtrix kodlarni (savdo, logistika) qoʻllab-quvvatlashni istagan va bepul, ishonchli variantni istagan loyihalar uchun. Agar sizning ustuvoringiz uslublash yoki ML-powered oʻqish kabi QR ga xos xususiyatlar boʻlsa, nafaqat keng shtrix kod formatlarini qamrab olish, unda maxsus QR kutubxonasi sizga yaxshiroq xizmat qiladi. Eng yaxshisi: 4. Net.Codecrete.QrCodeGenerator — Yengil va Standartlarga Yoʻnaltirilgan Net.Codecrete.QrCodeGenerator — bu Manuel Bleichenbacher tomonidan yaratilgan toza, minimal QR kod generatsiya kutubxonasi. Bu boʻlib, toʻgʻrilik va standartlarga muvofiqlikka yoʻnaltirilgan ( ). Project Nayuki'ning Java QR kod generatorining .NET tarjimasi 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 yordamida misol chiqishi bilan, bu maqsus kutubxona uchun yaxshi qabul qilingan. Uning eng katta afzalligi — System.Drawing'ga hech qanday bogʻliqligi yoʻq — u SVG, XAML yoʻli maʼlumotlari, PNG va BMP ni mahalliy ravishda yaratadi. Bu uni platformalararo .NET loyihalari va Docker'da ishlaydigan ASP.NET Core xizmatlari uchun ajoyib tanlovga aylantiradi. ~4.1 million NuGet yuklamalari Afzalliklari: MIT litsenziyasi, mutlaqo bepul Hech qanday System.Drawing bogʻliqligi yoʻq, haqiqiy platformalararo Kichik xotira hajmi, tez generatsiya SVG va XAML chiqishi oʻrnatilgan (WPF, WinUI va veb stsenariylar uchun foydali) Barcha 40 QR versiyalari va 4 ta xato tuzatish darajalarining toʻgʻri ilovasi Keng namunaviy loyihalar (WinForms, WPF, ASP.NET Core, SkiaSharp, ImageSharp) Cheklovlari: , QR oʻqish imkoniyati Faqat generatsiya