The class library file is downloaded at the end of the file.
[ThoughtWorks. QRCode. dll is the class library]
You need to add:
Copy codeThe Code is as follows:
Using ThoughtWorks. QRCode. Codec;
Using ThoughtWorks. QRCode. Codec. Data;
Using ThoughtWorks. QRCode. Codec. Util;
Main source code:
1. Generate a QR code
Copy codeThe Code is as follows:
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. parse the QR code
Copy codeThe Code is as follows:
QRCodeDecoder decoder = new QRCodeDecoder ();
String decodedString = decoder. decode (new QRCodeBitmapImage (new Bitmap (pb_view.Image )));
TxtEncodeData. Text = decodedString;