C#窗体创建二维码

    先到http://download.csdn.net/detail/hhxin635612026/6989797,下载ThoughtWorks.QRCode.dll

1、先将dll文件放入debug下,路径如下图


2、导入dll文件到当前项目,点击添加引用

在浏览中bin->debug下找到ThoughtWorks.QRCode.dll,点击确定


项目中出现下图情况说明添加成功

3、程序编写,

   以下为封装的二维码生成类

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ThoughtWorks.QRCode.Codec;
using System.Drawing;

namespace WindowsFormsApplication1
{
    class GenerateQRCode
    {
        /// <summary>
        /// 生成QRcode二维码
        /// </summary>
        /// <param name="code">要编码的字符串</param>
        /// <param name="size">生成图片的高度</param>
        /// <returns>生成后的二维码图片</returns>
        public static Bitmap GetQRCode(string code, int size)
        {
            QRCodeEncoder qrEntity = new QRCodeEncoder();

            qrEntity.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;//二维码编码方式

            qrEntity.QRCodeScale = 10;//每个小方格的宽度

            qrEntity.QRCodeVersion = 5;//二维码版本号

            qrEntity.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;//纠错码等级

            System.Drawing.Bitmap srcimage;
            //动态调整二维码版本号,上限40,过长返回空白图片,编码后字符最大字节长度2953
            while (true)
            {
                try
                {
                    srcimage = qrEntity.Encode(code, System.Text.Encoding.UTF8);
                    break;
                }
                catch (IndexOutOfRangeException e)
                {
                    if (qrEntity.QRCodeVersion < 40)
                    {
                        qrEntity.QRCodeVersion++;
                    }
                    else
                    {
                        srcimage = new Bitmap(100, 100);
                        break;
                    }
                }
            }
            //为生成的二维码图像裁剪白边并调整为请求的高度
            return srcimage;
        }
    }
}



4、生成二维码主要语句
 pictureBoxQRCode.Image = GenerateQRCode.GetQRCode(qrCode, 155);

就会在PictureBox控件上生成二维码,其中qrCode为二维码内容参数
      private void 创建ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            comboBoxCodeType.SelectedIndex = 1;//非微信二维码
            string timestamp = Convert.ToString(DateTimeExtensions.currentTimeMillis(DateTime.Now));//时间戳
            INIClass inic = new INIClass(Application.StartupPath + @"\demo.ini");//初始化路径;
            string token = inic.IniReadValue("Token", "token");//机构令牌
            string fullName = textBoxFullname.Text;
            string mob = textBoxMob.Text;
            string qrCode = fullName + mob + token + timestamp;
            textBoxQrCode.Text = qrCode;
            pictureBoxQRCode.Image = GenerateQRCode.GetQRCode(qrCode, 155);
            // MessageBox.Show(""+qrCode.Length);显示二维码长度
        }






您好!对于在C#中使用RDLC生成二维码,您可以按照以下步骤进行: 1. 首先,确保您已经安装了RDLC报表设计器。您可以在Visual Studio的“扩展和更新”选项中搜索并安装“Microsoft Rdlc Report Designer for Visual Studio”。 2. 创建一个RDLC报表文件。在Visual Studio中,右键单击项目,选择“添加”->“新建项”,然后选择“报表(.rdlc)”模板。给报表文件命名,并点击“添加”按钮。 3. 在RDLC报表设计器中,找到“工具箱”窗口。如果未显示工具箱窗口,可以在Visual Studio的“视图”菜单中选择“工具箱”。 4. 在工具箱中,找到“条形码”控件或者其他生成二维码的控件。将该控件从工具箱拖放到报表设计器中的所需位置。 5. 右键单击二维码控件,选择“属性”以设置二维码的相关属性。您可以设置二维码的内容、大小、颜色等。 6. 在C#代码中,使用ReportViewer控件加载并显示报表。您可以在Windows窗体或者WPF应用程序中添加ReportViewer控件,并将其设置为显示RDLC报表。 7. 在加载报表之前,设置报表数据源并绑定数据。根据您的需求,可以从数据库、数据集或者其他数据源获取数据,并将其绑定到报表中的字段。 8. 最后,调用ReportViewer控件的Refresh方法来加载并显示报表。 这样,您就可以在C#中使用RDLC生成二维码了。希望对您有所帮助!如果您有任何其他问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值