[C#]二維碼產生、解碼(QRCode)【支援winform、web調用】[C#]二維碼產生、解碼(QRCode)【支援winform、web調用】

來源:互聯網
上載者:User
[C#]二維碼產生、解碼(QRCode)【支援winform、web調用】 

winform(Demo)下載:QRCode.rar 

web(Demo)下載:webQRCode.rar

【ThoughtWorks.QRCode.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; 

winform(Demo)下載:QRCode.rar 

web(Demo)下載:webQRCode.rar

【ThoughtWorks.QRCode.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; 
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.