zoukankan      html  css  js  c++  java
  • [C#]二维码生成、解码(QRCode)【支持winform、web调用】

    [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; 
  • 相关阅读:
    给多个表的Dimension字段赋初值
    第十七章 性能(一)
    终于看到Inside Microsoft Dynamics Ax4.0了
    Snapin
    添加图片
    PHP功能齐全的发送邮件类,可以发送HTML和附件
    js重写的美化版select控件
    纯CSS的下拉菜单 支持IE6 IE7 Firefox
    BluePage通用分页类
    论坛结构改动,URL重写不影响收录地址的访问代码
  • 原文地址:https://www.cnblogs.com/xiaofengfeng/p/2879531.html
Copyright © 2011-2022 走看看