สร้าง | ความครอบคลุมของรหัส | สถานะการสร้าง | แพ็คเกจ NuGet |
---|---|---|---|
ล่าสุด / เสถียร |
QRCoder เป็นไลบรารีง่ายๆ ที่เขียนด้วย C#.NET ซึ่งช่วยให้คุณสร้างโค้ด QR ได้ ไม่มีการพึ่งพาไลบรารีภายนอก 1 มีให้ใช้งานเป็นแพ็คเกจบน NuGet และรองรับ .NET Framework, .NET Core, .NET Standard และ .NET สามารถดูรายการเฟรมเวิร์กเป้าหมายที่รองรับทั้งหมดได้ที่นี่
รู้สึกอิสระที่จะคว้า/แยกโครงการและทำให้ดีขึ้น!
สำหรับข้อมูลเพิ่มเติม โปรดดู: QRCode Wiki | บล็อกของผู้สร้าง (อังกฤษ) | บล็อกของผู้สร้าง (เยอรมัน)
บันทึกประจำรุ่นสำหรับรุ่นปัจจุบันและรุ่นที่ผ่านมาทั้งหมดสามารถอ่านได้ที่นี่: ? บันทึกประจำรุ่น
QRCoder เป็นโครงการโดย Raffael Herrmann และเปิดตัวครั้งแรกในวันที่ 10/2013 มันได้รับอนุญาตภายใต้ใบอนุญาต MIT
ชำระเงินที่เก็บ Github นี้หรือติดตั้ง QRCoder ผ่าน NuGet Package Manager หากคุณต้องการใช้ NuGet เพียงค้นหา "QRCoder" หรือเรียกใช้คำสั่งต่อไปนี้ในคอนโซล NuGet Package Manager:
PM > Install-Package QRCoder
ฟีด NuGet มีเฉพาะ รุ่นหลัก/เสถียร เท่านั้น หากคุณต้องการฟังก์ชันและคุณสมบัติล่าสุด คุณสามารถใช้ CI builds ผ่านแพ็คเกจ Github ได้ (ข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้แพ็คเกจ Github ใน Nuget Package Manager สามารถพบได้ที่นี่)
คุณจำเป็นต้องมีโค้ดสองสามบรรทัดเพื่อสร้างโค้ด QR แรกของคุณ
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 ในรูปแบบบิตแมปแล้ว ยังมีคลาสการเรนเดอร์โค้ด QR อีกหลายคลาส ซึ่งแต่ละคลาสมีจุดประสงค์พิเศษอีกอย่างหนึ่ง
หมายเหตุ: โปรดทราบว่าตัวเรนเดอร์บางตัวอาจไม่พร้อมใช้งานบนเฟรมเวิร์กเป้าหมายทั้งหมด โปรดตรวจสอบตารางความเข้ากันได้ในวิกิของเรา เพื่อดูว่ามีตัวเรนเดอร์เฉพาะบนเฟรมเวิร์กเป้าหมายที่คุณชื่นชอบหรือไม่
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับประเภทการเรนเดอร์ที่แตกต่างกัน ให้คลิกประเภทใดประเภทหนึ่งในรายการด้านบนหรือดูที่: Wiki: การใช้งานขั้นสูง - ตัวเรนเดอร์ QR-Code
ในทางเทคนิคแล้ว โค้ด QR เป็นเพียงการแสดงข้อความ/สตริงด้วยภาพ อย่างไรก็ตาม เครื่องอ่านโค้ด QR ส่วนใหญ่สามารถอ่านโค้ด QR "พิเศษ" ซึ่งจะกระตุ้นให้เกิดการดำเนินการที่แตกต่างกัน
ตัวอย่างเช่น: WiFi-QRcodes ซึ่งเมื่อสแกนด้วยสมาร์ทโฟนแล้ว สมาร์ทโฟนจะเข้าร่วมจุดเข้าใช้งานโดยอัตโนมัติ
รหัส 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 ) ;
//[...]
คุณยังสามารถใช้วิธีการโอเวอร์โหลดที่ยอมรับ Payload เป็นพารามิเตอร์ได้ ตัวสร้างน้ำหนักบรรทุกสามารถตั้งค่าเวอร์ชันรหัส QR ได้ (ค่าเริ่มต้นคือตั้งค่าอัตโนมัติ), ระดับ ECC (ค่าเริ่มต้นคือ M) และโหมด ECI (ค่าเริ่มต้นคือการตรวจจับอัตโนมัติ)
//[...]
QRCodeData qrCodeData = qrGenerator . CreateQrCode ( wifiPayload ) ;
//[...]
หรือหากคุณต้องการแทนที่ระดับ ECC ที่กำหนดโดยตัวสร้าง Payload คุณสามารถใช้วิธีโอเวอร์โหลด ซึ่งอนุญาตให้ตั้งค่าระดับ ECC
//[...]
QRCodeData qrCodeData = qrGenerator . CreateQrCode ( wifiPayload , QRCodeGenerator . ECCLevel . Q ) ;
//[...]
คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับตัวสร้างเพย์โหลดได้ใน Wiki ของเรา
PayloadGenerator รองรับเพย์โหลดประเภทต่อไปนี้:
(1) ขึ้นอยู่กับกรอบงานเป้าหมาย ไลบรารี .NET System. Drawing.Common และ System.Text.Encoding.CodePages จะใช้เป็นการขึ้นต่อกันของแพ็คเกจ