WebForm 生成并显示二维码

Generate and display QRCode in WebForm.

项目引用 QRCoder

How to use QRCoder

Via NuGet Package Manager

PM> Install-Package QRCoder

生成并显示 QRCode

生成 QRCode 很简单,但默认生成的是 Bitmap,不方便在 WebForm 里面显式。
有两种方法:借助 Handler.ashx(类似于生成验证码) 或 base64。下面主要展示 base64 的方法。

参考 QR Code Renderers
我们可以通过 Base64QRCode Renderer 得到二维码的 base64 字符串。

再参考 StackOverFlow,在 HTML img 控件中显式基于 base64 的图像。

完整代码如下

var qrGenerator = new QRCodeGenerator();
QRCodeData qrCodeData = qrGenerator.CreateQrCode("QR String", QRCodeGenerator.ECCLevel.Q);
var base64QRCode = new Base64QRCode(qrCodeData);
var base64Data = base64QRCode.GetGraphic(20);

ImgQRCode.Src = "data:image/gif;base64," + base64Data;

 

posted @ 2017-12-11 16:18  只追昭熙  阅读(966)  评论(1编辑  收藏  举报