逐梦论坛's Archiver

shillan 发表于 2018-6-9 18:35

开源QRCode库

[font="]如何使用QRCode库来编码和解码QRCode

[/font]
[font="][list][*][url=https://www.codeproject.com/KB/cs/qrcode/QRCode.zip]下载源码 - 2.35 MB[/url][/list][img=450,427]https://www.codeproject.com/KB/cs/qrcode/qrcode_app_decode.jpg[/img]介绍
在本文中,我将简要介绍[url=http://twit88.com/]QRCode库[/url]的功能。背景
QRCode库是一个.NET组件,可用于编码和解码QRCode。QRCode是源自日本的二维条码。如今,它广泛应用于广泛的行业,例如车辆零件跟踪和库存管理。
QR代表“快速反应”。它由日本公司Denso-Wave于1994年创建,旨在高速解码内容。现在,手机使用QR码来缓解数据输入。
QRCode也可以打印在名片上或显示在任何显示器上,然后可以通过手机捕获QRCode,前提是手机具有读取QRCode的软件。
QRCode库提供了以下功能:[list=1][*]将内容编码为可以保存为JPEG,GIF,PNG或位图格式的QR码图像[*]解码QR码图像[/list]使用代码
该库可用于任何.NET 2.0 Windows应用程序,ASP.NET Web应用程序或Windows Mobile设备应用程序。
下面显示了一些示例屏幕截图:
[img=450,426]https://www.codeproject.com/KB/cs/qrcode/qrcode_app_encode.jpg[/img]
[img=240,320]https://www.codeproject.com/KB/cs/qrcode/qrcode_mobile_encode.jpg[/img]
[/font][font="]
[/font][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);
          picEncode.Image = image;[/code]

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.