הצהרת גילוי נאות: אנחנו צוות יחסי מפתחים ב-Iron Software, החברה שמאחורי IronQR, אחת הספריות בהשוואה זו. למרות זאת, אנו מאמינים שהערכות כנות משרתות את כולם טוב יותר ממרקטינג. נציג את המתודולוגיה שלנו, נודה בהטיותינו, וניתן לקוד לדבר בעד עצמו. הרצנו כל ספריית קוד QR ב-C# תחת קריטריוני הערכה זהים: יצירת QR פשוטה, קריאת QR מתמונות, עומק התאמה אישית, תמיכה חוצת פלטפורמות, ועלות רישוי. להלן התוצאה, השוואה של 11 ספריות קוד QR ראויות לציון באקוסיסטם של .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 של IronQR פשטות זו היא הבסיס. השאלה האמיתית היא מה קורה כשצריך קוד QR פגום מסורק מחסן, להטמיע לוגו ממותג, למקד קונטיינרים לינוקס, או לעבד אלפי קודים במשימת אצווה. שם הספריות מתפצלות, ושם ההשוואה הזו מוכיחה את עצמה. לקרוא תקציר: טבלת השוואה מקיפה לפני שנצלול לעומק, הנה התמונה המלאה. טבלה זו לוכדת את הממדים שחשובים ביותר בבחירת ספריית 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 ❌ ✅ ביצועים גבוהים N/A ✅ ✅ מסחרי (1,249$+ לשנה) ~250K BarcodeLib ✅ ❌ ❌ ❌ ⚠️ (System.Drawing) Apache 2.0 (חינם) ~4.5M טבלה 1: השוואת מאסטר של 11 ספריות קוד QR ב-.NET על פני קריטריוני בחירה מרכזיים. ספירות ההורדה הן משוערות נכון לתחילת 2026. המשך המאמר מפרט כל שורה, עם קוד, פשרות, והערכות כנות. כיצד הערכנו את הספריות הללו? הערכנו כל ספרייה על פני שבעה קריטריונים, עם משקולות לפי התדירות שבה הם מניעים החלטות בחירה בעולם האמיתי: — האם היא יכולה ליצור קודי QR ממחרוזות, כתובות URL, ונתונים מובנים (vCards, אישורי Wi-Fi)? יצירת QR — האם היא יכולה לפענח קודי QR מתמונות, סריקות, או קבצי PDF? כיצד היא מטפלת בקודים פגומים או מסובבים? קריאת QR — הטמעת לוגו, שליטה בצבעים, עיצוב צורות מודול, הגדרת תיקון שגיאות התאמה אישית — QR סטנדרטי, Micro QR, RMQR (Rectangular Micro QR) תמיכה בפורמט QR — האם היא פועלת בצורה חלקה על Windows, Linux, macOS, ובתוך קונטיינרים של Docker ללא תיקוני System.Drawing? חוצה פלטפורמות — קוד פתוח מול מסחרי, תמחור לפי מפתח, הנחות על חבילות רישוי ועלות — איכות הפניות API, זמינות מדריכים, גודל קהילה, תחזוקה פעילה תיעוד ואקוסיסטם כל דוגמאות הקוד מכוונות ל-.NET 8 (LTS) ומשתמשות בהצהרות ברמה עליונה. כאשר .NET 10 מציג שיפורים רלוונטיים, נציין אותם. באיזו ספריית QR כדאי לבחור? מסגרת החלטה דלג על 11 פרופילי הספרייה למטה אם אתה כבר יודע את המגבלות שלך. הנה הדרך המהירה: → או . שתיהן ברישיון MIT. ל-QRCoder יש יותר מנועים (renderers) וכלי עזר למטענים (payload helpers); Net.Codecrete קלה יותר ונמנעת לחלוטין מ-System.Drawing. "אני צריך ליצור קודי QR בחינם ללא תלויות." QRCoder Net.Codecrete.QrCodeGenerator → (קריאה מבוססת ML, דיוק מיטבי בקודים פגומים), (חינם, מוכח בשטח, תמיכה בפורמטים הרחבה ביותר), או (חבילת אנטרפרייז, יקרה). "אני צריך גם ליצור וגם לקרוא קודי QR." IronQR ZXing.Net Aspose.BarCode → , , או . שלושתן נמנעות מתלות ב-System.Drawing ששוברת פריסות חוצות פלטפורמות. "אני מתקין על לינוקס/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 ספריות קוד QR ב-.NET בהשוואה 1. IronQR — קריאה ויצירת QR מבוססת ML עם תמיכה חוצת פלטפורמות IronQR היא ספריית קוד QR ייעודית של Iron Software, נפרדת ממוצר 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"); פלט 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 מתמונות תג מאירועים וצילומי מסך בזווית של סמארטפון, שם ZXing.Net וקוראי תמונות בסיסיים החזירו כלום. הפשרה היא גודל החבילה, מודל ה-ONNX מוסיף משקל. אם אינך זקוק לקריאה, IronQR.Slim מסופק ללא מודל ה-ML והוא קל משמעותית. חוזקות: קריאה מבוססת ML מטפלת בקודים פגומים, מסובבים וחסומים חלקית ונותנת עדיפות לדיוק תומכת בפורמטים QR Code, Micro QR, ו-RMQR (Rectangular Micro QR) API עיצוב מלא: צבעים, לוגואים, מודולים מעוגלים, שוליים חוצה פלטפורמות: Windows, macOS, Linux, iOS, Android, Docker, Azure, AWS תמיכה בקריאה אסינכרונית (ReadAsync) עבור עומסי עבודה של שרת שמור לפורמטים מרובים כגון תמונת PNG, JPG, TIFF מרובה עמודים, ועוד API ידידותי למשתמש מקל על השימוש מגבלות: נדרש רישיון מסחרי (749$+ למפתח לפריסה) החבילה המלאה כבדה יותר מאלטרנטיבות קוד פתוח בגלל מודל ה-ML נמוכה יותר מאופציות קוד פתוח בוגרות, מוצר חדש יותר (הושק ~2023) ספירת הורדות NuGet פרויקטים של יצירה בלבד אולי לא צריכים את תקורה ה-ML פרויקטים הדורשים גם יצירה וגם קריאה, במיוחד כאשר תנאי הסריקה אינם מושלמים (אפליקציות מובייל, סריקת מחסנים, תרחישי כנסים/אירועים). מדגים את IronQR המטפל ביצירת QR בזמן אמת עם Blazor ומיתוג מותאם אישית. הכי טוב עבור: מקרה הבוחן של כרטיס הביקור QR של ג'ף פריץ 2. — מחולל ה-QR הקוד הפתוח הפופולרי ביותר QRCoder ספריית QRCoder היא החבילה להורדה ביותר ב-NuGet, עם . נוצרה במקור על ידי Raffael Herrmann ב-2013 ומוחזקת כעת על ידי , זוהי מימוש C# טהור המתמקד אך ורק קוד QR (לא בקריאה). מעל 68 מיליון הורדות Shane32 ביצירת 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 מספקת מנועים (renderers) מרובים: PngByteQRCode (חוצה פלטפורמות, ללא תלות ב-System.Drawing), QRCode (מבוסס System.Drawing, Windows בלבד), SvgQRCode, AsciiQRCode, ועוד. היא כוללת גם מחוללי מטענים (payload generators) עבור נתונים מובנים כמו אישורי Wi-Fi, vCards, וסימניות, אשר חוסכים לך את הצורך לעצב את המחרוזות הללו ידנית. חוזקות: רישיון MIT, חינם לחלוטין לשימוש מסחרי 68 מיליון+ הורדות NuGet, אימוץ קהילתי עצום ויציבות מוכחת אפשרויות רינדור מרובות כולל PngByteQRCode שנמנע מ-System.Drawing מחוללי מטענים מובנים (Wi-Fi, vCard, מיקום גיאוגרפי, אירועי לוח שנה) תמיכה בקוד Micro QR אפס תלויות ביעדי .NET Standard מגבלות: , לא יכולה לקרוא או לפענח קבצי תמונת קוד QR יצירה בלבד חלק מהמנועים (כמו QRCode) תלויים ב-System.Drawing.Common, שהוא מוגבל ל-Windows בלבד מאז .NET 6 אין הטמעת לוגו מובנית (תצטרך להרכיב את התמונה בעצמך) אין עיצוב מתקדם (צורות מודול, מעברי צבע) פרויקטים הדורשים רק יצירת QR, במיוחד כאשר התקציב הוא אפס. אם אתה צריך ליצור קודי Wi-Fi QR או vCards ואינך צריך לקרוא קודים כלל, QRCoder היא הבחירה הפרגמטית ברירת המחדל עבור רוב מפתחי .NET. הכי טוב עבור: 3. — אולר שוויצרי לספריות ברקוד ZXing.Net ("Zebra Crossing") הוא של ספריית 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 דורשת חבילת binding (למשל, ZXing.Net.Bindings.SkiaSharp) פלט ZXing.Net ZXing.Net דורשת חבילות binding ספציפיות לפלטפורמה עבור רינדור וקריאה. החבילה הליבה מספקת את הלוגיקה של קידוד/פענוח; אתה מוסיף ZXing.Net.Bindings.Windows.Compatibility, ZXing.Net.Bindings.SkiaSharp, או ZXing.Net.Bindings.ImageSharp בהתאם לפלטפורמת היעד שלך. גישה מודולרית זו גמישה אך מוסיפה מורכבות אינטגרציה. חוזקות: רישיון Apache 2.0, חינם לשימוש מסחרי גם יצירה וגם קריאה בספרייה אחת תומכת ב-15+ פורמטים של ברקוד מעבר לקודי QR , מוכח בשטח, ידע קהילתי נרחב 32 מיליון+ הורדות NuGet Bindings זמינים עבור SkiaSharp, ImageSharp, OpenCV, ועוד מגבלות: תכונות ספציפיות ל-QR בסיסיות, ללא הטמעת לוגו, ללא עיצוב מתקדם דיוק קריאה בקודים פגומים/מסובבים בינוני בהשוואה לפתרונות מבוססי ML חבילות ה-Binding מוסיפות מורכבות ניהול תלויות עיצוב ה-API מראה את גילו, פחות שוטף מספריות .NET מודרניות קצב תחזוקה פעיל הואט (מתוחזק על ידי הקהילה) פרויקטים הדורשים גם תמיכה בקודי QR וגם בברקודים מסורתיים (קמעונאות, לוגיסטיקה) ורוצים אפשרות חינמית ומוכחת. אם העדיפות שלך היא תכונות ספציפיות ל-QR כמו עיצוב או קריאה מבוססת ML ולא כיסוי רחב של פורמטי ברקוד, ספרייה ייעודית ל-QR תשרת אותך טוב יותר. הכי טוב עבור: 4. Net.Codecrete.QrCodeGenerator — קל משקל וממוקד סטנדרטים Net.Codecrete.QrCodeGenerator היא ספריית יצירת קוד QR נקייה ומינימלית מאת Manuel Bleichenbacher. זהו , המתמקד נכונות ועמידה בסטנדרטים ( ). פורט ל-.NET של מחולל קוד QR של 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 עם , היא מאומצת היטב עבור ספרייה ממוקדת. האיכות הבולטת שלה היא אפס תלויות ב-System.Drawing — היא מייצרת SVG, נתוני XAML path, PNG, ו-BMP באופן מקומי. זה הופך אותה לבחירה מצוינת עבור פרויקטי .NET חוצי פלטפורמות ושירותי ASP.NET Core הפועלים ב-Docker. ~4.1 מיליון הורדות NuGet חוזקות: רישיון MIT, חינם לחלוטין אפס תלות ב-System.Drawing, באמת חוצה פלטפורמות טביעת רגל קטנה, יצירה מהירה פלט SVG ו-XAML מובנה (שימושי בתרחישי WPF, WinUI ואינטרנט) מימוש נכון של כל 40 גרסאות ה-QR וכל 4 רמות תיקון השגיאות פרויקטי דוגמה נרחבים (WinForms, WPF, ASP.NET Core, SkiaSharp, ImageSharp) מגבלות: , אין יכולת קריאת QR יצירה בלבד אין הטמעת לוגו או תכונות עיצוב מתקדמות התאמה אישית מוגבלת בהשוואה למחוללי המטענים של QRCoder פחות תוכן קהילתי ומדריכים בהשוואה ל-QRCoder או ZXing.Net מפתחים הדורשים מחולל QR קטן, נכון, חוצה פלטפורמות עם פלט SVG וללא תלות ב-System.Drawing. אם יעד הפריסה שלך הוא לינוקס או Docker ואתה צריך רק יצירה, ספרייה זו ראויה להתייחסות רצינית. הכי טוב עבור: 5. SkiaSharp.QrCode — יצירה חוצת פלטפורמות בביצועים גבוהים SkiaSharp.QrCode מאת היא ספריית יצירת QR ממוקדת ביצועים הבנויה על SkiaSharp. היא נוצרה במיוחד כדי להימנע ממגבלות GDI+ של System.Drawing תוך מתן ביצועים ברמה מקומית באמצעות האצת חומרה של SkiaSharp. guitarrapc using SkiaSharp.QrCode.Image; // שורה אחת: יצירה ושמירה QRCodeImageBuilder.SavePng("https://example.com", "qrcode.png"); // או עם הגדרות מותאמות var pngBytes = new QRCodeImageBuilder("https://example.com") .WithSize(512, 512) .WithErrorCorrection(ECCLevel.H)