يبني | تغطية الكود | بناء الحالة | حزمة نوجيت |
---|---|---|---|
الأحدث / مستقر |
QRCoder هي مكتبة بسيطة، مكتوبة بلغة C#.NET، والتي تمكنك من إنشاء رموز QR. ليس لديه أي تبعيات للمكتبات الخارجية 1 ، وهو متاح كحزمة على NuGet ويدعم .NET Framework و.NET Core و.NET Standard و.NET. يمكن العثور على قائمة كاملة بأطر العمل المستهدفة المدعومة هنا.
لا تتردد في الاستيلاء على المشروع أو تفرعه وجعله أفضل!
لمزيد من المعلومات راجع: QRCode ويكي | مدونة المبدع (انجليزية) | مدونة المنشئ (باللغة الألمانية)
يمكن قراءة ملاحظات الإصدار الخاصة بجميع الإصدارات الحالية والسابقة هنا: ? ملاحظات الإصدار
QRCoder هو مشروع لرافائيل هيرمان وتم إصداره لأول مرة في 10/2013. إنه مرخص بموجب ترخيص MIT.
قم إما بمراجعة مستودع Github هذا أو تثبيت QRCoder عبر NuGet Package Manager. إذا كنت تريد استخدام NuGet، فما عليك سوى البحث عن "QRCoder" أو تشغيل الأمر التالي في وحدة تحكم NuGet Package Manager:
PM > Install-Package QRCoder
يحتوي موجز NuGet على الإصدارات الرئيسية/المستقرة فقط. إذا كنت تريد أحدث الوظائف والميزات، فيمكنك استخدام إصدارات CI عبر حزم Github. (يمكن العثور على مزيد من المعلومات حول كيفية استخدام حزم Github في Nuget Package Manager هنا.)
ما عليك سوى بضعة أسطر من التعليمات البرمجية لإنشاء رمز الاستجابة السريعة الأول الخاص بك.
using ( QRCodeGenerator qrGenerator = new QRCodeGenerator ( ) )
using ( QRCodeData qrCodeData = qrGenerator . CreateQrCode ( " The text which should be encoded. " , QRCodeGenerator . ECCLevel . Q ) )
using ( PngByteQRCode qrCode = new PngByteQRCode ( qrCodeData ) )
{
byte [ ] qrCodeImage = qrCode . GetGraphic ( 20 ) ;
}
هناك الكثير من الخيارات الأخرى. لذا لا تتردد في قراءة المزيد عن ذلك في الويكي الخاص بنا: Wiki: كيفية استخدام QRCoder
إلى جانب فئة PngByteQRCode العادية (التي تظهر في المثال أعلاه) لإنشاء رموز QR بتنسيق Bitmap، هناك المزيد من فئات عرض رمز QR، كل منها لغرض خاص آخر.
ملحوظة: يرجى العلم أنه ليس كل العارضين متاحين في جميع الأطر المستهدفة. يرجى التحقق من جدول التوافق في الويكي الخاص بنا، لمعرفة ما إذا كان هناك عارض محدد متاح في إطار العمل المستهدف المفضل لديك.
لمزيد من المعلومات حول أنواع العرض المختلفة، انقر فوق أحد الأنواع الموجودة في القائمة أعلاه أو قم بإلقاء نظرة على: Wiki: الاستخدام المتقدم - عارضو QR-Code
من الناحية الفنية، رمز الاستجابة السريعة هو مجرد تمثيل مرئي لنص/سلسلة. ومع ذلك، يستطيع معظم قارئي رموز الاستجابة السريعة قراءة رموز QR "الخاصة" التي تؤدي إلى إجراءات مختلفة.
على سبيل المثال: رموز WiFi-QR التي، عند مسحها بواسطة الهاتف الذكي، تسمح للهاتف الذكي بالانضمام إلى نقطة الوصول تلقائيًا.
يتم إنشاء رموز QR "الخاصة" هذه باستخدام سلسلة حمولة منظمة خاصة، عند إنشاء رمز QR. تساعدك فئة PayloadGenerator.cs على إنشاء سلاسل الحمولة النافعة هذه. لإنشاء حمولة WiFi على سبيل المثال، تحتاج فقط إلى سطر واحد من التعليمات البرمجية:
PayloadGenerator . WiFi wifiPayload = new PayloadGenerator . WiFi ( " MyWiFi-SSID " , " MyWiFi-Pass " , PayloadGenerator . WiFi . Authentication . WPA ) ;
لإنشاء رمز QR من هذه الحمولة، ما عليك سوى استدعاء طريقة "ToString()" وتمريرها إلى QRCoder.
//[...]
QRCodeData qrCodeData = qrGenerator . CreateQrCode ( wifiPayload . ToString ( ) , QRCodeGenerator . ECCLevel . Q ) ;
//[...]
يمكنك أيضًا استخدام طريقة التحميل الزائد التي تقبل الحمولة كمعلمة. يمكن أن يحتوي مولد الحمولة على إصدار رمز الاستجابة السريعة (الإعداد الافتراضي هو الضبط التلقائي)، ومستوى ECC (الافتراضي هو M) ووضع ECI (الافتراضي هو الكشف التلقائي).
//[...]
QRCodeData qrCodeData = qrGenerator . CreateQrCode ( wifiPayload ) ;
//[...]
أو إذا كنت تريد تجاوز مستوى ECC الذي تم تعيينه بواسطة Payload generator، فيمكنك استخدام طريقة التحميل الزائد، التي تسمح بتعيين مستوى ECC.
//[...]
QRCodeData qrCodeData = qrGenerator . CreateQrCode ( wifiPayload , QRCodeGenerator . ECCLevel . Q ) ;
//[...]
يمكنك معرفة المزيد عن مولد الحمولة النافعة في Wiki الخاص بنا.
يدعم PayloadGenerator الأنواع التالية من الحمولات:
(1) اعتمادًا على الإطار المستهدف، سيتم استخدام مكتبات .NET System.Drawing.Common وSystem.Text.Encoding.CodePages كتبعيات للحزمة.