asp.net C#生成和解析二维码的实例代码

时间:2022-09-01 20:39:04

类库文件我们在文件最后面下载

【ThoughtWorks.QRCode.dll 就是类库】

使用时需要增加:

复制代码代码如下:


using ThoughtWorks.QRCode.Codec;

 

using ThoughtWorks.QRCode.Codec.Data;

using ThoughtWorks.QRCode.Codec.Util;


主要源代码:

 

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;