1. 程式人生 > >c# 使用ZXing.Net生成二維碼

c# 使用ZXing.Net生成二維碼

iter mat 工程 lan bitmap 設置 前段時間 evel 調用

生活中使用二維碼還是很多的,前段時間公司領導讓研究一下二維碼,所以,在這寫下研究的心得。

生成二維碼的途徑一般有兩種,一是,通過前端方式生成二維碼使用 QRCode.js生成二維碼,二就是通過服務端代碼生成,這裏主要說服務器端的生成二維碼的方式。

一,首先服務端生成二維碼,通過調用dll就可以了,比較常用的dll有兩種一種是QrCode.Net另一種是ZXing.Net,我選擇了ZXing.Net來生成二維碼。

二,下載ZXing.dll 下載地址 http://zxingnet.codeplex.com/releases/view/631469

三,生成二維碼方法

     /// <summary>
/// 創建二維碼 /// </summary> /// <param name="msg">二維碼中保存的信息</param> /// <returns></returns> static Bitmap Create(string msg) { MultiFormatWriter writer = new MultiFormatWriter(); Dictionary<EncodeHintType, object
> hint = new Dictionary<EncodeHintType, object>(); //設置二維碼為utf-8編碼 hint.Add(EncodeHintType.CHARACTER_SET, "utf-8"); //設置糾錯等級, 高 hint.Add(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H); BitMatrix bm = writer.encode(msg, BarcodeFormat.QR_CODE, 50
, 50, hint); BarcodeWriter barcodeWriter = new BarcodeWriter(); return barcodeWriter.Write(bm); }

四,調用生成二維碼,並且保存為圖片

1 static void Main(string[] args)
2         {
3             Bitmap qrCode = Create(DateTime.Now.ToString());
4             string path = Environment.CurrentDirectory;
5             qrCode.Save(path+"qr.Jpeg",ImageFormat.Png);
6         }

執行以後,二維碼已經生成成功,二維碼保存在工程的bin文件夾下。

c# 使用ZXing.Net生成二維碼