c# 使用ZXing.Net生成二維碼
阿新 • • 發佈:2017-09-30
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生成二維碼