Լրիվ բացահայտում. Մենք Iron Software-ի, այս համեմատության մեջ մտնող գրադարաններից մեկի՝ IronQR-ի մշակող հարաբերությունների թիմն ենք։ Այսուհանդերձ, մենք հավատում ենք, որ ազնիվ գնահատականները բոլորին ավելի լավ են ծառայում, քան մարքեթինգային հնարքները։ Մենք կներկայացնենք մեր մեթոդաբանությունը, կընդունենք մեր կողմնակալությունները և կթողնենք, որ կոդը խոսի ինքնին։ Մենք յուրաքանչյուր C# QR կոդի գրադարան անցկացրել ենք նույնական գնահատման չափանիշներով. պարզ QR ստեղծում, QR կարդում պատկերներից, հարմարեցման խորություն, միջպլատֆորմային աջակցություն և լիցենզավորման արժեք։ Ստորև բերված է արդյունքը. .NET էկոհամակարգում 11 նշանավոր QR կոդի գրադարանների համեմատություն, որը նախատեսված է ձեզ օգնելու ընտրել ձեր նախագծի համար ճիշտ մեկը առաջին փորձից։ Ահա թե ինչպես է երեք տող QR ստեղծումը տեսք ունենում -ով Visual Studio-ում, որը մեր կողմից քննարկվող գրադարաններից մեկն է. IronQR using IronQr; using IronSoftware.Drawing; QrCode qr = QrWriter.Write("https://example.com"); AnyBitmap bitmap = qr.Save(); bitmap.SaveAs("myqr.png"); IronQR QR կոդի օրինակ Այս պարզությունը աղյուսակի հիմքն է։ Իական հարցն այն է, թե ինչ է լինում, երբ ձեզ անհրաժեշտ է վերցնել վնասված QR կոդ պահեստի սկաներից, ներդնել ապրանքային լոգո, թիրախավորել Linux կոնտեյներներ կամ մշակել հազարավոր կոդեր խմբային աշխատանքի ժամանակ։ Այստեղ են տարբերվում գրադարանները, և այստեղ է, որ այս համեմատությունը արժանանում է իր արժանիքներին։ TL;DR. Master համեմատության աղյուսակ Նախքան խորը նայելը, ահա ամբողջական պատկերը։ Այս աղյուսակը պարունակում է այն չափումները, որոնք ամենաշատն են կարևոր .NET նախագծի համար QR գրադարան ընտրելիս։ Գրադարան Ստեղծել Կարդալ Լոգո/Ոճ Միկրո QR Միջպլատֆորմային Լիցենզիա NuGet ներբեռնումներ IronQR ✅ ✅ ML-ով ✅ Ամբողջական ✅ + RMQR ✅ Win/Mac/Linux/Mobile Կոմերցիոն ($749+) ~56K QRCoder ✅ ❌ ✅ Միջին ✅ ⚠️ Մասնակի (System.Drawing) MIT (Անվճար) ~68M ZXing.Net ✅ ✅ ❌ Նվազագույն ❌ ⚠️ Կապերով Apache 2.0 (Անվճար) ~32M Net.Codecrete.QrCodeGenerator ✅ ❌ ❌ ❌ ✅ MIT (Անվճար) ~4.1M SkiaSharp.QrCode ✅ ❌ ✅ Հատուկ ձևեր ❌ ✅ MIT (Անվճար) ~1.2M Aspose.BarCode ✅ ✅ ✅ ✅ ✅ Կոմերցիոն ($999+) ~5.4M Syncfusion Barcode ✅ ❌ ✅ Միջին ❌ ✅ (UI կոմպոնենտ) Կոմերցիոն (Անվճար համայնքային) ~2M+ Spire.Barcode ✅ ✅ ✅ Լոգո ներդրում ❌ ⚠️ (System.Drawing) Կոմերցիոն ($599+) ~450K IronBarcode ✅ ✅ ✅ ✅ Միկրո QR ✅ Win/Mac/Linux Կոմերցիոն ($749+) ~1.2M Dynamsoft Barcode Reader ❌ ✅ Բարձր արդյունավետություն Ո/Ո ✅ ✅ Կոմերցիոն ($1,249+/տարի) ~250K BarcodeLib ✅ ❌ ❌ ❌ ⚠️ (System.Drawing) Apache 2.0 (Անվճար) ~4.5M Աղյուսակ 1. Master համեմատություն 11 .NET QR կոդի գրադարանների միջև՝ ըստ հիմնական ընտրության չափանիշների։ Ներբեռնման քանակները մոտավոր են 2026 թվականի սկզբի դրությամբ։ Այս հոդվածի մնացած մասը մանրամասնում է յուրաքանչյուր տողը՝ ներառելով կոդ, փոխզիջումներ և ազնիվ գնահատականներ։ Ինչպես ենք գնահատել այս գրադարանները Մենք գնահատել ենք յուրաքանչյուր գրադարան յոթ չափանիշների հիման վրա, որոնք կշռվել են ըստ այն բանի, թե որքան հաճախ են դրանք հանգեցնում իրական աշխարհի ընտրության որոշումների. — Կարո՞ղ է այն ստեղծել QR կոդեր ցանկերից, URL-ներից և կառուցվածքային տվյալներից (vCards, Wi-Fi հավատարմագրեր)։ QR ստեղծում — Կարո՞ղ է այն վերծանել QR կոդերը պատկերներից, սկանավորումներից կամ PDF-ներից։ Ինչպե՞ս է այն վերաբերվում վնասված կամ պտտված կոդերին։ QR կարդալ — Լոգո ներդրում, գույնի վերահսկում, մոդուլի ձևի ոճավորում, սխալների ուղղման կազմաձևում Հարմարեցում — Ստանդարտ QR, Միկրո QR, RMQR (Ուղղանկյուն Միկրո QR) QR ձևաչափի աջակցություն — Արդյո՞ք այն մաքուր աշխատում է Windows, Linux, macOS և Docker կոնտեյներների ներսում՝ առանց System.Drawing հնարքների։ Միջպլատֆորմային — Բաց կոդ vs. կոմերցիոն, մշակողի համար գին, փաթեթային զեղչեր Լիցենզավորում և արժեք — API տեղեկատուի որակ, ձեռնարկի առկայություն, համայնքի չափ, ակտիվ սպասարկում Փաստաթղթավորում և էկոհամակարգ Բոլոր կոդի օրինակները թիրախավորում են և օգտագործում են վերևի մակարդակի հայտարարություններ։ Այնտեղ, որտեղ .NET 10-ը ներկայացնում է համապատասխան բարելավումներ, մենք նշում ենք դրանք։ .NET 8 (LTS) Ո՞ր QR գրադարանը պետք է ընտրել. Որոշման շրջանակ Բաց թողեք 11 գրադարանների պրոֆիլները, եթե արդեն գիտեք ձեր սահմանափակումները։ Ահա արագ ուղին. → կամ ։ Երկուսն էլ MIT լիցենզավորված են։ QRCoder-ն ունի ավելի շատ ռենդերեր և բեռի օգնականներ, Net.Codecrete-ն ավելի թեթև է և ամբողջությամբ խուսափում է System.Drawing-ից: «Ես պետք է անվճար QR կոդեր ստեղծեմ՝ առանց կախվածությունների»։ QRCoder Net.Codecrete.QrCodeGenerator → (ML-ով կարդալը, վնասված կոդերի լավագույն ճշգրտությունը), (անվճար, փորձարկված, ձևաչափերի ամենալայն աջակցությունը) կամ (ձեռնարկի փաթեթ, թանկ)։ «Ես պետք է և՛ ստեղծեմ, և՛ կարդամ QR կոդեր»։ IronQR ZXing.Net Aspose.BarCode → , կամ ։ Երեքն էլ խուսափում են System.Drawing կախվածությունից, որը խախտում է միջպլատֆորմային տեղակայումները: «Ես տեղակայում եմ Linux/Docker և չեմ կարող օգտագործել System.Drawing»։ IronQR SkiaSharp.QrCode Net.Codecrete.QrCodeGenerator → -ը առաջատարն է հում ստեղծման մակնիշներում։ Կարդալու արդյունավետության համար -ը նախատեսված է բարձր հոսքագծային սկանավորման համար: «Արդյունավետությունը և հիշողության հետքը կարևոր են»։ SkiaSharp.QrCode Dynamsoft Barcode Reader → Օգտագործեք այն, ինչ ունեք։ Այլ վաճառողի QR գրադարան ավելացնելը, երբ ձեր փաթեթն արդեն ունի մեկը, հազվադեպ է իմաստ ունենում լիցենզավորման կամ սպասարկման տեսանկյունից: «Ես արդեն օգտագործում եմ Aspose/Syncfusion/Iron Software փաթեթ»։ → -ն ունի MAUI և Blazor ինտեգրման ուղղակի ուղեցույցներ։ Microsoft MVP Jeff Fritz-ը ՝ օգտագործելով IronQR-ը Blazor-ով, որը իրական աշխարհի օրինակ է այս նույն օրինաչափության: «Ես կառուցում եմ Blazor/MAUI բջջային հավելված QR սկանավորումով»։ IronQR ստեղծել է QR-ի վրա հիմնված թվային բիզնես քարտի հավելված Համեմատված 11 .NET QR կոդի գրադարաններ 1. IronQR — ML-ով QR կարդալ և ստեղծել միջպլատֆորմային աջակցությամբ IronQR-ը Iron Software-ի նվիրված QR կոդի գրադարանն է, որը առանձնացված է իրենց ավելի լայն IronBarcode արտադրանքից։ Նրա առանձնահատուկ առանձնահատկությունը մեքենական ուսուցման մոդելն է ( -ով), որը հայտնաբերում և կարդում է QR կոդերը ոչ կատարյալ պատկերներից, պտտված, մասամբ ծածկված կամ տարօրինակ անկյան տակ լուսանկարված, հաճախ ընդամենը մի քանի տող կոդով: ONNX Այն նաև ունակ է հեշտությամբ ստեղծել QR կոդի օբյեկտներ, աջակցելով QR կոդերը պատկերներով ոճավորելուն, ավելացնելու անհատական գույներ և ձեր QR պատկերը պահելու տարբեր արդյունքի ձևաչափերով: Ստեղծում: using IronQr; using IronSoftware.Drawing; // Ստեղծել ոճավորված QR կոդ՝ լոգոյով 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-ի կողմից ստեղծված QR արդյունք Կարդալ: 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 կարդալու արդյունք ML մոդելն այն է, ինչը տարբերում է IronQR-ը այս ցուցակի բոլոր մյուս գրադարաններից։ Մեր թեստավորման ժամանակ այն հաջողությամբ վերծանեց QR կոդերը կոնֆերանսի վկայականների լուսանկարներից և անկյունային սմարթֆոնի էկրանահաններից, որտեղ ZXing.Net-ը և պատկերային մշակման հիմնական ընթերցողները ոչինչ չէին վերադարձնում։ Փոխզիջումը փաթեթի չափն է, ONNX մոդելը ավելացնում է քաշը։ Եթե ձեզ կարդալու կարիք չունեք, IronQR.Slim-ը, որը մատակարարվում է ML մոդելով, զգալիորեն ավելի թեթև է: Ուժեղ կողմեր: ML-ով կարդալը կարողանում է վարվել վնասված, պտտված և մասամբ ծածկված QR կոդերի հետ և առաջնահերթություն է տալիս ճշգրտությանը Աջակցում է QR Code, Micro QR և RMQR (Ուղղանկյուն Micro QR) ձևաչափերին Ամբողջական ոճավորման API. գույներ, լոգոներ, կլորացված մոդուլներ, շրջանակներ Միջպլատֆորմային. Windows, macOS, Linux, iOS, Android, Docker, Azure, AWS Ասինխրոն կարդալու աջակցություն (ReadAsync) սերվերի աշխատանքի համար Պահպանել տարբեր ձևաչափերով, ինչպիսիք են PNG պատկերը, JPG, բազմաէջ TIFF, և ավելին Օգտագործողի բարեկամ API-ն հեշտացնում է օգտագործումը Սահմանափակումներ: Պահանջվում է կոմերցիոն լիցենզիա (749$+- մեկ մշակողի համար տեղակայման համար) Ամբողջական փաթեթը ծանր է, քան բաց կոդի այլընտրանքները՝ ML մոդելի պատճառով ցածր է, քան հասուն բաց կոդի տարբերակները, ավելի նոր արտադրանք (գործարկվել է ~2023 թվականին) NuGet ներբեռնման քանակը Միայն ստեղծման նախագծերը կարիք չունեն ML ավելորդ բեռի Նախագծերի համար, որոնք պահանջում են և՛ ստեղծում, և՛ կարդալ, հատկապես երբ սկանավորման պայմանները ոչ կատարյալ են (բջջային հավելվածներ, պահեստային սկանավորում, կոնֆերանս/միջոցառումների սցենարներ)։ ցույց է տալիս IronQR-ը, որը կառավարում է իրական ժամանակում QR ստեղծումը Blazor-ով և անհատական ապրանքանիշով: Լավագույնն է. Jeff Fritz QR բիզնես քարտի օրինակը 2. — Ամենահայտնի բաց կոդի QR ստեղծողը QRCoder QRCoder գրադարանը NuGet-ում ամենաշատ ներբեռնված QR կոդի փաթեթն է, որն ունի ։ Այն սկզբնապես ստեղծվել է Raffael Herrmann-ի կողմից 2013 թվականին և այժմ , դա զուտ C# իրականացում է, որը կենտրոնացած է բացառապես QR կոդի վրա (ոչ կարդալու)։ 68 միլիոնից ավելի ներբեռնում պահպանվում է Shane32-ի կողմից ստեղծման using QRCoder; // Ստեղծել QR կոդ և պահել որպես PNG byte-ներ 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 արդյունքի պատկեր QRCoder-ն առաջարկում է բազմաթիվ ռենդերեր. PngByteQRCode (միջպլատֆորմային, առանց System.Drawing կախվածության), QRCode (System.Drawing-ով, միայն Windows), SvgQRCode, AsciiQRCode և այլն։ Այն նաև ներառում է բեռի գեներատորներ կառուցվածքային տվյալների համար, ինչպիսիք են Wi-Fi հավատարմագրերը, vCards-ը և էջանիշերը, որոնք խնայում են ձեզ այդ ցանկերը ձեռքով ձևաչափելուց: Ուժեղ կողմեր: MIT լիցենզիա, լիովին անվճար կոմերցիոն օգտագործման համար 68M+ NuGet ներբեռնումներ, զանգվածային համայնքային ընդունում և ապացուցված կայունություն Բազմաթիվ ռենդեր ընտրանքներ, ներառյալ PngByteQRCode-ը, որը խուսափում է System.Drawing-ից Միջուկի բեռի գեներատորներ (Wi-Fi, vCard, աշխարհագրական դիրք, օրացույցի իրադարձություններ) Միկրո QR կոդի աջակցություն .NET Standard թիրախների զրոյական կախվածություններ Սահմանափակումներ: , չի կարող կարդալ կամ վերծանել QR կոդի պատկերային ֆայլեր Միայն ստեղծում Որոշ ռենդերներ (ինչպիսին է QRCode-ը) կախված են System.Drawing.Common-ից, որը .NET 6-ից սկսած միայն Windows-ի համար է Առանց ներկառուցված լոգո ներդրման (դուք պետք է պատկերը ինքներդ համադրեք) Առանց առաջադեմ ոճավորման (մոդուլի ձևեր, անցումներ) Նախագծերի համար, որոնք պահանջում են միայն QR ստեղծում, հատկապես երբ բյուջեն զրոյական է։ Եթե ձեզ անհրաժեշտ է ստեղծել Wi-Fi QR կոդեր կամ vCard-ներ և առհասարակ կոդեր կարդալու կարիք չունեք, QRCoder-ը ամենից .NET մշակողների համար գործնական լռելյայն ընտրությունն է: Լավագույնն է. 3. — Շտրիխ կոդերի գրադարանների շվեյցարական դանակ ZXing.Net («Զեբրայի խաչմերուկ») — Օրիգինալ Java ZXing գրադարանի ։ Այն շտրիխ կոդերի ընդհանուր նշանակության գրադարան է, որը աջակցում է 15-ից ավելի ձևաչափերի, QR Code, Data Matrix, Aztec, PDF 417, UPC, EAN, Code 128 և այլն։ QR աջակցությունը նրա ավելի լայն հնարավորությունների ենթաբազմությունն է: ZXing.Net .NET պորտը using ZXing; using ZXing.Common; using ZXing.QrCode; // Ստեղծել QR կոդ 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 կոդի կարդալը պահանջում է կապի փաթեթ (օրինակ՝ ZXing.Net.Bindings.SkiaSharp) ZXing.Net արդյունք