http://jingyan.baidu.com/article/84b4f565cd4cf060f6da32e6.html
組件下載:http://download.csdn.net/detail/lybwwp/6861821使用很簡單,介紹:http://blog.csdn.net/lybwwp/article/details/18444369
在如今二維碼漫天飛的時(shí)期,如果你還不會使用,那你就out了,今天讀者就帶您走進(jìn)二維碼的世界。
Visual Studio(VS)2010 C#
.Net Framework 4.0及以上
要用到一個類:QRCodeEncoder
這個類要添加一個動態(tài)庫:ThoughtWorks.QRCode.dll(筆者不知道怎么上傳附件,讀者可以上網(wǎng)搜索,也可以給筆者留言)
然后引入命名空間:using ThoughtWorks.QRCode.Codec;
![C#實(shí)現(xiàn)的小功能:[6]C#如何生成二維碼](http://s1.VeVb.com/20170308/hm1rlxpwh3v11.gif)
好了,項(xiàng)目開始。
首先,聲明一個 QRCodeEncoder 類實(shí)例:
QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();
設(shè)置編碼方式:
qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;
這里筆者將其設(shè)置為字節(jié)編碼(還有兩種編碼方式,讀者可以自行試驗(yàn)),現(xiàn)在的流行的普遍的二維碼都是字節(jié)編碼。
設(shè)置規(guī)模和版本:
qrCodeEncoder.QRCodeScale = 4;
qrCodeEncoder.QRCodeVersion = 7;
這里設(shè)置規(guī)模為:4,版本為:7,其余值讀者可以自行試驗(yàn),這兩個值基本只是改變了二維碼的大小,讀者設(shè)置的值都是現(xiàn)在普遍使用的值。
設(shè)置錯誤校驗(yàn)(錯誤更正)的級別:
qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;
這里設(shè)置為中等,一共有四個級別,讀者可以自行試驗(yàn)。
根據(jù)內(nèi)容生成二維碼圖片,最后把生成的圖片顯示出來就可以啦:
string link = "http://jingyan.baidu.com/user/npublic?un=%E8%BE%B9%E7%BC%98%E6%B2%B3%E5%9B%BE";
bmp = qrCodeEncoder.Encode(link);
一般來說,二維碼生成的都是一個連接(當(dāng)然讀者可以改成任意的文本)。
筆者這里將它封裝成了一個方法,方便使用:
/// <summary>
/// 根據(jù)鏈接獲取二維碼
/// </summary>
/// <param name="link">鏈接</param>
/// <returns>返回二維碼圖片</returns>
PRivate Bitmap GetDimensionalCode(string link)
{
Bitmap bmp = null;
try
{
QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();
qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;
qrCodeEncoder.QRCodeScale = 4;
//int version = Convert.ToInt16(cboVersion.Text);
qrCodeEncoder.QRCodeVersion = 7;
qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;
bmp = qrCodeEncoder.Encode(link);
}
catch (Exception ex)
{
//MessageBox.Show("Invalid version !");
}
return bmp;
}
![C#實(shí)現(xiàn)的小功能:[6]C#如何生成二維碼](http://s1.VeVb.com/20170308/nzsxn01phrl11.gif)
OK,搞定,看看我們生成的二維碼,呵呵!
![C#實(shí)現(xiàn)的小功能:[6]C#如何生成二維碼](http://s1.VeVb.com/20170308/x5sbftojasl11.gif)
新聞熱點(diǎn)
疑難解答