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.生成二维码
折叠
展开
C# Code
复制内容到剪贴板
- 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.解析二维码
折叠
展开
C# Code
复制内容到剪贴板
- QRCodeDecoder decoder = new QRCodeDecoder();
- String decodedString = decoder.decode(new QRCodeBitmapImage(new Bitmap(pb_view.Image)));
- txtEncodeData.Text = decodedString;