c# 链接生成二维码

二维码实时生成,无需存储服务器

引用包:ThoughtWorks.QRCode

 
        /// <summary>
        /// 生成二维码base64
        /// </summary>
        /// <param name="ELink_Url">二维码链接</param>
        /// <returns></returns>
        public string GetQRCode(string ELink_Url)
        {
            //初始化二维码生成工具
            QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();
            qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;
            qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;
            qrCodeEncoder.QRCodeVersion = 0;
            qrCodeEncoder.QRCodeScale = 4;
 
            //将字符串生成二维码图片
            Bitmap image = qrCodeEncoder.Encode(ELink_Url, Encoding.Default);
            
            //   将二维码存储到路径imgpath上
            //   image.Save(imgpath, PictureBox.Image.RawFormat); //imgpath为绝对路径
            //   image.Dispose();
 
            //无需存储服务器,直接返回base64图片,页面可直接查看
            MemoryStream ms = new MemoryStream();
            image.Save(ms, ImageFormat.Jpeg);
            byte[] arr = new byte[ms.Length];
            ms.Position = 0;
            ms.Read(arr, 0, (int)ms.Length);
            ms.Close();
            string strbaser64 ="data:image/png;base64," + Convert.ToBase64String(arr);
            return strbaser64;
        }

C#中将链接生成二维码是一个常见的需求,通常可以借助第三方库来简化这个过程。最常用的库之一是QRCoder,它是一个纯.NET库,能够轻松地创建QR码。 ### 步骤: #### 1. 安装 QRCoder 库 你可以通过NuGet包管理器安装 `QRCoder` 库。打开Visual Studio的“工具”菜单,选择“ NuGet 包管理器”,然后点击“程序集的NuGet 包管理器”。搜索并安装名为 "QRCoder" 的包。 也可以直接使用命令行: ```bash Install-Package QRCoder ``` #### 2. 编写代码生成二维码 下面是一段简单的示例代码,展示如何使用QRCoder将URL转换成二维码图片,并保存到文件系统中: ```csharp using System; using System.Drawing; // 需要添加对System.Drawing.Common的支持 using QRCoder; class Program { static void Main(string[] args) { string url = "https://www.example.com"; QRCodeGenerator qrGenerator = new QRCodeGenerator(); QRCodeData qrCodeData = qrGenerator.CreateQrCode(url, QRCodeGenerator.ECCLevel.Q); QRCode qrCode = new QRCode(qrCodeData); Bitmap qrCodeImage = qrCode.GetGraphic(20); // 控制大小 // 将图像保存为PNG格式的文件 qrCodeImage.Save("qrcode.png", System.Drawing.Imaging.ImageFormat.Png); Console.WriteLine("二维码已成功生成!"); } } ``` 上述代码首先导入了必要的命名空间,接着设置了一个目标URL字符串作为待编码的数据源;接下来利用`QRCodeGenerator`, `QRCodeData` 和 `QRCode` 类逐步构建出最终所需的二维码对象。最后一步则是把得到的结果渲染成为位图形式,并将其存盘。 此外还可以调整一些参数来自定义样式比如颜色、模块尺寸等。 如果你想要显示而不是保存二维码,在Windows Forms应用程序里可以直接把它加载进PictureBox控件中,而在ASP.NET项目里面则能响应式返回给客户端浏览器做即时查看用途。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值