Είμαστε η ομάδα developer relations της Iron Software, της εταιρείας πίσω από την IronQR, μία από τις βιβλιοθήκες σε αυτή τη σύγκριση. Παρόλα αυτά, πιστεύουμε ότι οι ειλικρινείς αξιολογήσεις εξυπηρετούν όλους καλύτερα από το marketing spin. Θα δείξουμε τη μεθοδολογία μας, θα αναγνωρίσουμε τις προκαταλήψεις μας και θα αφήσουμε τον κώδικα να μιλήσει από μόνος του. Αποκάλυψη: Εκτελέσαμε κάθε βιβλιοθήκη C# QR code κάτω από πανομοιότυπα κριτήρια αξιολόγησης: απλή δημιουργία QR, ανάγνωση QR από εικόνες, βάθος παραμετροποίησης, διαπλατφορμική υποστήριξη και κόστος αδειοδότησης. Παρακάτω βρίσκεται το αποτέλεσμα, μια σύγκριση 11 αξιοσημείωτων βιβλιοθηκών QR code στο οικοσύστημα .NET, σχεδιασμένη να σας βοηθήσει να επιλέξετε τη σωστή για το έργο σας με την πρώτη προσπάθεια. Δείτε πώς μοιάζει η δημιουργία QR κώδικα με τρεις γραμμές κώδικα χρησιμοποιώντας την στο Visual Studio, μία από τις βιβλιοθήκες που θα καλύψουμε: IronQR using IronQr; using IronSoftware.Drawing; QrCode qr = QrWriter.Write("https://example.com"); AnyBitmap bitmap = qr.Save(); bitmap.SaveAs("myqr.png"); Παράδειγμα Εξόδου QR Code με IronQR Αυτή η απλότητα είναι το βασικό. Το πραγματικό ερώτημα είναι τι συμβαίνει όταν χρειάζεται να έναν κατεστραμμένο QR κώδικα από έναν σαρωτή αποθήκης, να ενσωματώσετε ένα επώνυμο λογότυπο, να στοχεύσετε σε κοντέινερ Linux ή να επεξεργαστείτε χιλιάδες κώδικες σε μια μαζική εργασία. Εκεί αποκλίνουν οι βιβλιοθήκες και εκεί κερδίζει την αξία της αυτή η σύγκριση. διαβάσετε Η Σύνοψη: Πίνακας Συγκριτικής Αξιολόγησης Πριν εμβαθύνουμε, ορίστε η πλήρης εικόνα. Αυτός ο πίνακας αποτυπώνει τις διαστάσεις που έχουν τη μεγαλύτερη σημασία κατά την επιλογή μιας βιβλιοθήκης QR για ένα έργο .NET. Βιβλιοθήκη Δημιουργία Ανάγνωση Λογότυπο/Στυλ Micro QR Διαπλατφορμική Άδεια Λήψεις NuGet IronQR ✅ ✅ Με ML ✅ Πλήρης ✅ + RMQR ✅ Win/Mac/Linux/Mobile Εμπορική ($749+) ~56K QRCoder ✅ ❌ ✅ Μέτριο ✅ ⚠️ Μερική (System.Drawing) MIT (Δωρεάν) ~68M ZXing.Net ✅ ✅ ❌ Ελάχιστο ❌ ⚠️ Μέσω bindings 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 ✅ ✅ ✅ ✅ Micro QR ✅ Win/Mac/Linux Εμπορική ($749+) ~1.2M Dynamsoft Barcode Reader ❌ ✅ Υψηλής απόδοσης Δ/Υ ✅ ✅ Εμπορική ($1,249+/έτος) ~250K BarcodeLib ✅ ❌ ❌ ❌ ⚠️ (System.Drawing) Apache 2.0 (Δωρεάν) ~4.5M Πίνακας 1: Κύρια σύγκριση 11 βιβλιοθηκών QR code .NET σε βασικά κριτήρια επιλογής. Οι μετρήσεις λήψεων είναι προσεγγιστικές από τις αρχές του 2026. Το υπόλοιπο του άρθρου αναλύει κάθε γραμμή, με κώδικα, συμβιβασμούς και ειλικρινείς αξιολογήσεις. Πώς Αξιολογήσαμε Αυτές τις Βιβλιοθήκες; Αξιολογήσαμε κάθε βιβλιοθήκη βάσει επτά κριτηρίων, σταθμισμένα από το πόσο συχνά οδηγούν σε αποφάσεις επιλογής στον πραγματικό κόσμο: — Μπορεί να δημιουργήσει QR κώδικες από συμβολοσειρές, URL και δομημένα δεδομένα (vCards, διαπιστευτήρια Wi-Fi); Δημιουργία QR — Μπορεί να αποκωδικοποιήσει QR κώδικες από εικόνες, σαρώσεις ή PDF; Πώς χειρίζεται κατεστραμμένους ή περιστραμμένους κώδικες; Ανάγνωση QR — Ενσωμάτωση λογοτύπου, έλεγχος χρωμάτων, στυλ σχήματος ενοτήτων, διαμόρφωση διόρθωσης σφαλμάτων Παραμετροποίηση — Τυπικό QR, Micro QR, RMQR (Ορθογώνιο Micro QR) Υποστήριξη Μορφής QR — Λειτουργεί απρόσκοπτα σε Windows, Linux, macOS και μέσα σε κοντέινερ Docker χωρίς hacks του System.Drawing; Διαπλατφορμική — Open-source έναντι εμπορικού, τιμολόγηση ανά προγραμματιστή, εκπτώσεις σουίτας Αδειοδότηση & Κόστος — Ποιότητα αναφοράς API, διαθεσιμότητα οδηγών, μέγεθος κοινότητας, ενεργή συντήρηση Τεκμηρίωση & Οικοσύστημα Όλα τα παραδείγματα κώδικα στοχεύουν στο και χρησιμοποιούν δηλώσεις κορυφαίου επιπέδου. Όπου το .NET 10 εισάγει σχετικές βελτιώσεις, θα τις σημειώσουμε. .NET 8 (LTS) Ποια Βιβλιοθήκη QR Πρέπει να Επιλέξετε; Ένα Πλαίσιο Αποφάσεων Παραλείψτε τα 11 προφίλ βιβλιοθηκών παρακάτω αν γνωρίζετε ήδη τους περιορισμούς σας. Εδώ είναι η γρήγορη διαδρομή: → ή . Και οι δύο έχουν άδεια MIT. Η QRCoder έχει περισσότερους renderers και βοηθητικά προγράμματα payload. Η 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 → Το οδηγεί στα benchmarks ακατέργαστης δημιουργίας. Για την απόδοση ανάγνωσης, το είναι ειδικά σχεδιασμένο για σάρωση υψηλής απόδοσης. "Η απόδοση και το αποτύπωμα μνήμης είναι κρίσιμα." SkiaSharp.QrCode Dynamsoft Barcode Reader → Χρησιμοποιήστε ό,τι έχετε. Η προσθήκη μιας βιβλιοθήκης QR από άλλο πάροχο όταν η σουίτα σας περιλαμβάνει ήδη μία σπάνια έχει νόημα από άποψη αδειοδότησης ή συντήρησης. "Χρησιμοποιώ ήδη μια σουίτα Aspose/Syncfusion/Iron Software." → Η έχει σαφείς οδηγούς ενσωμάτωσης MAUI και Blazor. Ο Microsoft MVP Jeff Fritz , ένα πραγματικό παράδειγμα αυτού του ακριβούς προτύπου. "Δημιουργώ μια εφαρμογή Blazor/MAUI mobile με σάρωση QR." IronQR δημιούργησε μια εφαρμογή ψηφιακής επαγγελματικής κάρτας βασισμένη σε QR χρησιμοποιώντας την IronQR με Blazor Οι 11 Βιβλιοθήκες QR Code .NET Συγκριτικά 1. IronQR — Ανάγνωση και Δημιουργία QR με ML και Διαπλατφορμική Υποστήριξη Η IronQR είναι η αποκλειστική βιβλιοθήκη QR code της Iron Software, ξεχωριστή από το ευρύτερο προϊόν IronBarcode. Το χαρακτηριστικό της που ξεχωρίζει είναι ένα μοντέλο μηχανικής μάθησης (βασισμένο σε ) που ανιχνεύει και διαβάζει QR κώδικες από ατελείς εικόνες, περιστραμμένους, μερικώς κρυμμένους ή φωτογραφημένους υπό περίεργες γωνίες, συχνά με λίγες μόνο γραμμές κώδικα. ONNX Είναι επίσης ικανή να δημιουργεί αντικείμενα QR code με ευκολία, με υποστήριξη για στυλ 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"); Έξοδος Δημιουργημένου QR με IronQR Ανάγνωση: 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 κώδικες από φωτογραφίες συνεδριακών κονκάρδων και πλάγιες λήψεις οθόνης smartphone όπου η 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 Έργα που χρειάζονται τόσο δημιουργία όσο και ανάγνωση, ειδικά όπου οι συνθήκες σάρωσης δεν είναι τέλειες (εφαρμογές mobile, σάρωση αποθήκης, σενάρια συνεδρίων/εκδηλώσεων). Η δείχνει την IronQR να χειρίζεται δημιουργία QR σε πραγματικό χρόνο με Blazor και προσαρμοσμένη επωνυμία. Ιδανικό για: μελέτη περίπτωσης QR επαγγελματικής κάρτας του Jeff Fritz 2. — Ο Δημοφιλέστερος Γεννήτορας QR Ανοιχτού Κώδικα QRCoder Η βιβλιοθήκη QRCoder είναι το πακέτο QR code με τις περισσότερες λήψεις στο NuGet, με . Δημιουργήθηκε αρχικά από τον Raffael Herrmann το 2013 και τώρα , είναι μια καθαρή υλοποίηση C# που εστιάζει αποκλειστικά στη QR code (όχι στην ανάγνωση). πάνω από 68 εκατομμύρια λήψεις συντηρείται από τον Shane32 δημιουργία using QRCoder; // Δημιουργία QR κώδικα και αποθήκευση ως bytes 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 παρέχει πολλαπλούς renderers: PngByteQRCode (διαπλατφορμική, χωρίς εξάρτηση από System.Drawing), QRCode (βασισμένη σε System.Drawing, μόνο Windows), SvgQRCode, AsciiQRCode και άλλα. Περιλαμβάνει επίσης γεννήτορες payload για δομημένα δεδομένα όπως διαπιστευτήρια Wi-Fi, vCards και σελιδοδείκτες, που σας γλιτώνουν από τη χειροκίνητη μορφοποίηση αυτών των συμβολοσειρών. Δυνατά σημεία: Άδεια MIT, εντελώς δωρεάν για εμπορική χρήση 68M+ λήψεις στο NuGet, τεράστια υιοθέτηση από την κοινότητα και αποδεδειγμένη σταθερότητα Πολλαπλές επιλογές renderer, συμπεριλαμβανομένου ενός PngByteQRCode που αποφεύγει το System.Drawing Ενσωματωμένοι γεννήτορες payload (Wi-Fi, vCard, γεωγραφική τοποθεσία, εκδηλώσεις ημερολογίου) Υποστήριξη Micro QR code Μηδενικές εξαρτήσεις από στόχους .NET Standard Περιορισμοί: , δεν μπορεί να διαβάσει ή να αποκωδικοποιήσει αρχεία εικόνων QR code Μόνο δημιουργία Ορισμένοι renderers (όπως ο QRCode) εξαρτώνται από το System.Drawing.Common, το οποίο είναι μόνο για Windows από το .NET 6 και μετά Δεν υπάρχει ενσωματωμένη υποστήριξη για ενσωμάτωση λογοτύπου (θα κάνατε σύνθεση της εικόνας μόνοι σας) Δεν υπάρχουν προηγμένες δυνατότητες στυλ (σχήματα ενοτήτων, ντεγκραντέ) Έργα που χρειάζονται μόνο δημιουργία QR code, ειδικά όταν ο προϋπολογισμός είναι μηδενικός. Αν χρειάζεται να δημιουργήσετε QR κώδικες Wi-Fi ή vCards και δεν χρειάζεται να διαβάσετε καθόλου κώδικες, η QRCoder είναι η πρακτική προεπιλεγμένη επιλογή για τους περισσότερους προγραμματιστές .NET. Ιδανικό για: 3. — Ο Ελβετικός Στρατιωτικός Σουγιάς των Βιβλιοθηκών Barcode ZXing.Net ("Zebra Crossing") είναι η της αρχικής βιβλιοθήκης ZXing Java. Είναι μια βιβλιοθήκη barcode γενικής χρήσης που υποστηρίζει πάνω από 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 Το ZXing.Net απαιτεί πακέτα σύνδεσης ειδικά για την πλατφόρμα για την απόδοση και την ανάγνωση. Το κύριο πακέτο παρέχει λογική κωδικοποίησης/αποκωδικοποίησης. Προσθέτετε ZXing.Net.Bindings.Windows.Compatibility, ZXing.Net.Bindings.SkiaSharp ή ZXing.Net.Bindings.ImageSharp ανάλογα με την πλατφόρμα στόχο σας. Αυτή η αρθρωτή προσέγγιση είναι ευέλικτη αλλά προσθέτει πολυπλοκότητα στην ενσωμάτωση. Δυνατά σημεία: Άδεια Apache 2.0, δωρεάν για εμπορική χρήση Τόσο η δημιουργία όσο και η ανάγνωση σε μία βιβλιοθήκη Υποστηρίζει 15+ μορφές barcode πέρα από τους QR κώδικες , δοκιμασμένη, εκτεταμένη γνώση από την κοινότητα 32M+ λήψεις στο NuGet Διαθέσιμα bindings για SkiaSharp, ImageSharp, OpenCV και άλλα Περιορισμοί: Οι λειτουργίες ειδικές για QR είναι βασικές, χωρίς ενσωμάτωση λογοτύπου, χωρίς προηγμένες λειτουργίες στυλ Η ακρίβεια ανάγνωσης σε κατεστραμμένους/περιστραμμένους QR κώδικες είναι μέτρια σε σύγκριση με λύσεις που βασίζονται σε ML Τα πακέτα σύνδεσης προσθέτουν πολυπλοκότητα στη διαχείριση εξαρτήσεων Ο σχεδιασμός του API δείχνει την ηλικία του, λιγότερο ρευστός από σύγχρονες βιβλιοθήκες .NET Ο ρυθμός ενεργής συντήρησης έχει επιβραδυνθεί (συντηρείται από την κοινότητα) Έργα που χρειάζονται υποστήριξη τόσο για QR κώδικες όσο και για παραδοσιακούς barcode (λιανική, logistics) και θέλουν μια δωρεάν, αποδεδειγμένη επιλογή. Αν η προτεραιότητά σας είναι λειτουργίες ειδικές για QR όπως το στυλ ή η ανάγνωση με ML αντί για ευρεία κάλυψη μορφών barcode, μια αποκλειστική βιβλιοθήκη QR θα σας εξυπηρετήσει καλύτερα. Ιδανικό για: 4. Net.Codecrete.QrCodeGenerator — Ελαφρύ και Εστιασμένο στα Πρότυπα Το Net.Codecrete.QrCodeGenerator είναι μια καθαρή, ελάχιστη βιβλιοθήκη δημιουργίας QR code από τον Manuel Bleichenbacher. Είναι μια , εστιασμένη στη διορθότητα και τη συμμόρφωση με τα πρότυπα ( ). μεταφορά στο .NET του γεννήτορα QR code Java του Project Nayuki 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 Με , έχει υιοθετηθεί καλά για μια εστιασμένη βιβλιοθήκη. Η ποιότητα που ξε ~4.1 εκατομμύρια λήψεις στο NuGet