Толық ашу: Біз IronQR кітапханасының әзірлеушісі Iron Software компаниясының әзірлеушілерді қолдау тобымыз, бұл кітапхана осы салыстырудағы кітапханалардың бірі болып табылады. Соған қарамастан, біз әділ бағалаулар маркетингтік айла-шарғылардан гөрі бәріне жақсы қызмет ететініне сенеміз. Біз өз әдістемемізді көрсетеміз, кемшіліктерімізді мойындаймыз және кодтың өзі сөйлеуіне жол береміз. Біз әрбір C# QR коды кітапханасын біркелкі бағалау критерийлері бойынша сынақтан өткіздік: қарапайым QR генерациясы, суреттерден QR оқу, теңшеу тереңдігі, кросс-платформалық қолдау және лицензиялау құны. Төменде бұл .NET экожүйесіндегі 11 танымал QR коды кітапханасының нәтижесі, бірінші ретте дұрыс кітапхананы жобаңыз үшін таңдауға көмектесуге арналған. Міне, кітапханасымен Visual Studio-да QR генерациясының үш жолы, біз қарастыратын кітапханалардың бірі: 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 контейнерлерін нысанаға алу немесе партиялық тапсырмада мыңдаған кодтарды өңдеу қажет болғанда не болатыны. Міне, кітапханалардың айырмашылықтары және бұл салыстыру өз құнын дәлелдейтін жер. Қысқаша: Негізгі Салыстыру Кестесі Толық тереңдеу алдында, міне, жалпы көрініс. Бұл кесте .NET жобасы үшін QR кітапханасын таңдау кезіндегі ең маңызды өлшемдерді қамтиды. Кітапхана Генерация Оқу Логотип/Стильдеу Микро QR Кросс-платформа Лицензия NuGet Жүктеулері IronQR ✅ ✅ ML-powered ✅ Толық ✅ + 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: 11 .NET QR коды кітапханасының негізгі критерийлер бойынша салыстыруы. Жүктеу саны 2026 жылдың басындағы шамамен көрсетілген. Бұл мақаланың қалған бөлігі әрбір жолды код, артықшылықтар мен кемшіліктер және әділ бағалаулармен толықтырады. Біз бұл кітапханаларды қалай бағаладық? Біз әрбір кітапхананы іске қосу шешімдерін жиі анықтайтын жеті критерий бойынша бағаладық: — жолдардан, URL мекенжайларынан және құрылымдалған деректерден (vCards, Wi-Fi идентификаторы) QR кодтарын жасай ала ма? QR генерациясы — суреттерден, сканерлерден немесе PDF файлдарынан QR кодтарын декодтай ала ма? Зақымдалған немесе бұрылған кодтармен қалай жұмыс істейді? 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 Джефф Фриц Blazor-мен IronQR қолданып, QR-ге негізделген цифрлық визитка қосымшасын , бұл үлгінің нақты мысалы. "Мен Blazor/MAUI мобильді қосымшасын QR сканерлеумен жасаймын." IronQR жасады .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-ді осы тізімдегі басқа кітапханалардан ерекшелендіреді. Біздің сынақтарымызда ол ZXing.Net және қарапайым сурет өңдеу оқығыштары ештеңе көрсетпеген кезде, конференция белгілерінің фотосуреттері мен бұрыштарынан түсірілген смартфон скриншоттарынан QR кодтарын сәтті декодтады. Бағасы - пакет мөлшері, ONNX моделі салмақ қосады. Егер сізге оқу қажет болмаса, IronQR.Slim ML моделінсіз жеткізіледі және айтарлықтай жеңіл. Артықшылықтары: ML-қуатты оқу зақымдалған, бұрылған және ішінара жабылған QR кодтарымен жұмыс істейді және дәлдікке басымдық береді QR Code, Micro QR және RMQR (Тікбұрышты Микро QR) форматтарын қолдайды Толық стильдеу API: түстер, логотиптер, дөңгелектелген модульдер, шегіністер Кросс-платформа: Windows, macOS, Linux, iOS, Android, Docker, Azure, AWS Асинхронды оқу қолдауы (ReadAsync) серверлік жұмыстар үшін PNG суреті, JPG, көп беттік TIFF және т.б. сияқты бірнеше форматтарға сақтау Қолданушыға ыңғайлы API оны пайдалануды жеңілдетеді Кемшіліктері: Коммерциялық лицензия қажет (орналастыру үшін әзірлеушіге $749-дан бастап) ML моделіне байланысты толық пакет ашық кодты баламалардан ауыр жетілген ашық кодты нұсқалардан төмен, жаңа өнім (шамамен 2023 жылы іске қосылған) NuGet жүктеу саны Тек генерация үшін жобалар ML артық жүктемесін қажет етпеуі мүмкін Генерация және оқуды қажет ететін жобалар үшін, әсіресе сканерлеу жағдайлары мінсіз болмаған кезде ( мобильді қосымшалар, қойма сканерлеу, конференция/іс-шара сценарийлері). Blazor және таңдалмалы брендін қолданып, IronQR арқылы нақты уақыттағы QR генерациясын көрсетеді. Ең жақсысы: Джефф Фрицтің QR визиткасы туралы іс-әңгімесі 2. — Ең Танымал Ашық Кодты QR Генераторы QRCoder QRCoder кітапханасы NuGet-тегі ең көп жүктелген QR коды пакеті болып табылады, . Алғаш рет 2013 жылы Раффаэль Херрманн жасаған және қазір , бұл тек QR коды (оқуға емес) бағытталған таза C# жүзеге асыру. 68 миллионнан астам жүктеулермен Шейн32 тарапынан қолдау көрсетілетін генерациясына using QRCoder; // QR кодын жасап, PNG байттары ретінде сақтау 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 жүктеулері, үлкен қауымдастық қолдауы және дәлелденген тұрақтылық System.Drawing-ті қолданбайтын PngByteQRCode-ті қоса алғанда, бірнеше рендер нұсқалары Құрылымдалған төлем генераторлары (Wi-Fi, vCard, геолокация, күнтізбелік іс-шаралар) Микро QR коды қолдауы .NET Standard нысаналарына тәуелділік жоқ Кемшіліктері: , QR коды сурет файлдарын оқи алмайды немесе декодтай алмайды Тек генерация Кейбір рендерлер (QRCode сияқты) .NET 6-дан бастап тек Windows-қа арналған System.Drawing.Common-ға тәуелді Логотип ендіру жоқ (сіз суретті өзіңіз композициялайсыз) Қосымша стильдеу жоқ (модуль пішіндері, градиенттер) Тек QR генерациясын қажет ететін жобалар үшін, әсіресе бюджет нөлге тең болса. Егер сізге Wi-Fi QR кодтарын немесе vCard-ларды жасау қажет болса және кодтарды мүлдем оқу қажет болмаса, QRCoder көптеген .NET әзірлеушілері үшін практикалық таңдау болып табылады. Ең жақсысы: 3. — Баркод Кітапханаларының Швейцариялық Қылышы ZXing.Net ("Zebra Crossing") — бұл бастапқы Java ZXing кітапханасының . Бұл QR Код, Data Matrix, Aztec, PDF 417, UPC, EAN, Code 128 және т.б. сияқты 15-тен астам форматтарды қолдайтын жалпы мақсаттағы баркод кітапханасы. 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 шығаруы ZXing.Net рендеринг және оқу үшін платформаға арналған байланыстыру пакеттерін талап етеді. Негізгі пакет кодтау/декодтау логикасын қамтамасыз етеді; сіз ZXing.Net.Bindings.Windows.Compatibility, ZXing.Net.Bindings.SkiaSharp немесе ZXing.Net.Bindings.ImageSharp пакеттерін нысаналы платформаңызға байланысты қосасыз. Бұл модульдік тәсіл икемді, бірақ интеграцияның күрделілігін арттырады. Артықшылықтары: Apache 2.0 лицензиясы, коммерциялық пайдалану үшін тегін Бір кітапханада генерация және оқу QR кодтарынан басқа 15+ баркод форматтарын қолдайды , сынақтан өткен, кең қауымдастық білімі 32M+ NuGet жүктеулері SkiaSharp, ImageSharp, OpenCV және т.б. үшін байланыстар бар Кемшіліктері: QR-ге арналған мүмкіндіктер қарапайым, логотип ендіру жоқ, қосымша стильдеу жоқ Зақымдалған/бұрылған QR кодтарын оқу дәлдігі ML-қуатты шешімдермен салыстырғанда орташа Байланыстыру пакеттері тәуелділіктерді басқарудың күрделілігін арттырады API дизайны ескірген, заманауи .NET кітапханаларына қарағанда аз көркем Белсенді қолдау қарқыны баяулаған (қауымдастықпен қолдау көрсетіледі) QR кодынан және дәстүрлі баркодтардан (бөлшек сауда, логистика) басқа да қолдауды қажет ететін және тегін, дәлелденген опцияны қалайтын жобалар үшін. Егер сіздің басымдығыңыз стильдеу немесе ML-қуатты оқу сияқты QR-ге арналған мүмкіндіктер болса, баркод форматтарының кең қамтылуына қарағанда, арнайы QR кітапханасы сізге жақсы қызмет етеді. Ең жақсысы: 4. Net.Codecrete.QrCodeGenerator — Жеңіл және Стандарттарға Бағытталған Net.Codecrete.QrCodeGenerator — Мануэль Блайхенблехер жасаған таза, минималды QR коды генерация кітапханасы. Бұл Project Nayuki-дің Java QR коды генераторының , дұрыстық пен стандарттарға сәйкестікке ( ) бағытталған. .NET аудармасы 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 мысалы , ол шоғырланған кітапхана үшін жақсы қабылданған. Оның ерекше сапасы - System.Drawing-ке тәуелділік жоқ - ол SVG, XAML жол деректерін, PNG және BMP-ті жергілікті түрде жасайды. Бұл оны кросс-платформалық .NET жобалары және Docker-де жұмыс істейтін ASP.NET Core қызметтері үшін тамаша ~4.1 миллион NuGet жүктеулерімен