二維碼神器QRCoder

  很久沒有寫Blog,都是由於不當心墜入了愛河,時間都給我家那位了,都沒時間加班了(嗨呀,不當心撒了一下狗糧),不過,仍是但願單身的趕忙找到心儀的另外一半,實在找不到,那就加班啊(開個玩笑,別認真)。git

二維碼神器

如今出門在外,二維碼隨處可見,吃個東西、買個青菜,沒有weixin或者zhifubao的掃一掃來付款,阿姨都嫌棄你了。github

這裏推薦一款開源二維碼的第三方庫:QRCoderspa

QRCoder:https://github.com/codebude/QRCoder/code

QRCoder是一個簡單的庫,用C#.NET編寫,能夠建立QR碼,沒有與其餘的庫有任何依賴關係, 引用就一個幾百kb的dll,而且效率還不錯。orm

引入

新建一個winform項目,而後從nuget上引入便可blog

而後再引入命名空間get

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

using QRCoder; //就是它,沒有多餘的

建立第一張二維碼

在GayHub上,QRCoder的readme已經介紹過了,只要4行簡單的代碼,就能夠完成二維碼生成了。string

QRCodeGenerator qrGenerator = new QRCodeGenerator();
QRCodeData qrCodeData = qrGenerator.CreateQrCode("The text which should be encoded.", QRCodeGenerator.ECCLevel.Q);
QRCode qrCode = new QRCode(qrCodeData);
Bitmap qrCodeImage = qrCode.GetGraphic(20);

不過這裏作了一個簡單的winform來使用它,it

private void CreateQR(int pixelsPerModule, string info, Color qrColor, Color qrBackgroundColor, Bitmap logo, int iconSizePercent = 15, int iconBorderWidth = 6)
{
    QRCodeGenerator qrGenerator = new QRCodeGenerator();
    QRCodeData qrCodeData = qrGenerator.CreateQrCode(info, QRCodeGenerator.ECCLevel.Q);
    QRCode qrCode = new QRCode(qrCodeData);
    Bitmap qrCodeImage = qrCode.GetGraphic(pixelsPerModule, qrColor, qrBackgroundColor, logo, iconSizePercent, iconBorderWidth, true);
    picBoxQRCode.Image = qrCodeImage;
}

private void CreateQR(int pixelsPerModule, string info, Color qrColor, Color qrBackgroundColor)
{
    QRCodeGenerator qrGenerator = new QRCodeGenerator();
    QRCodeData qrCodeData = qrGenerator.CreateQrCode(info, QRCodeGenerator.ECCLevel.Q);
    QRCode qrCode = new QRCode(qrCodeData);
    Bitmap qrCodeImage = qrCode.GetGraphic(pixelsPerModule, qrColor, qrBackgroundColor, true);
    picBoxQRCode.Image = qrCodeImage;
}

界面效果:io

 

QRCoder還有許多設置,根據不一樣須要來傳入不一樣參數便可。

文章中的Demo代碼很簡單,你們借鑑參考玩玩,歡迎你們來到GayHub交流:https://github.com/EminemJK/QRCodeForm ,碼雲:https://gitee.com/Backgrounder/QRCodeForm.git

.Net生態社區但願愈來愈壯大,不斷有優秀的開源組件的加入。

相關文章
相關標籤/搜索