[C#]二维码生成、解码(QRCode)【支持winform、web调用】

来源:互联网 发布:淘宝网3c认证怎么上传 编辑:程序博客网 时间:2024/06/06 07:06

winform(Demo)下载:QRCode.rar 

web(Demo)下载:webQRCode.rar

【ThoughtWorks.QRCode.dll 就是类库】【demo中有这个dll,不要再让我发邮件了~~我伤不起啊~~】

使用时需要增加:

using ThoughtWorks.QRCode.Codec;

using ThoughtWorks.QRCode.Codec.Data;

using ThoughtWorks.QRCode.Codec.Util;

演示包中的“QRCode.dll”是封装的类库。可以留邮箱,发给你们源码。

主要源代码:

1.生成二维码

复制代码
QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();   String encoding = cboEncoding.Text;   if (encoding == "Byte")   {        qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;   }   else if (encoding == "AlphaNumeric")   {        qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.ALPHA_NUMERIC;   }   else if (encoding == "Numeric")   {        qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.NUMERIC;   }   try   {        int scale = Convert.ToInt16(txtSize.Text);        qrCodeEncoder.QRCodeScale = scale;   }   catch (Exception ex)   {        MessageBox.Show("Invalid size!");        return;   }   try   {        int version = Convert.ToInt16(cboVersion.Text);        qrCodeEncoder.QRCodeVersion = version;   }   catch (Exception ex)   {        MessageBox.Show("Invalid version !");   }      string errorCorrect = cboCorrectionLevel.Text;   if (errorCorrect == "L")        qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.L;   else if (errorCorrect == "M")        qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;   else if (errorCorrect == "Q")        qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.Q;   else if (errorCorrect == "H")        qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.H;    Image image;   String data = txtEncodeData.Text;   image = qrCodeEncoder.Encode(data);   pb_view.Image = image;  
复制代码

2.解析二维码

QRCodeDecoder decoder = new QRCodeDecoder();   String decodedString = decoder.decode(new QRCodeBitmapImage(new Bitmap(pb_view.Image)));   txtEncodeData.Text = decodedString; 
0 0
原创粉丝点击