C#使用QRCodeEncoder生成在线支付二维码图片(中间带Logo)|C/S开发框架

C#生成在线支付二维码图片(中间带Logo)
二维码效果

ThoughtWorks.QRCode.dll二维码组件
QRCodeEncoder类:
C#全选
/// <summary>
/// 生成二维码(中间带LOGO)
/// </summary>
/// <param name="absoluteSave">保存的绝对路径</param>
/// <param name="qrdata">二维码内容:要附加的内容</param>
///<param name="absoluteSave">保存的绝对路径</param>
/// <returns></returns>
Image CreateQRCode(string qrdata, Image logo)
{
try
{
QRCodeEncoder encoder = new QRCodeEncoder();
encoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;//编码方式(注意:BYTE能支持中文,ALPHA_NUMERIC扫描出来的都是数字)
encoder.QRCodeScale = 5;//大小(值越大生成的二维码图片像素越高)
encoder.QRCodeVersion = 0;//版本(注意:设置为0主要是防止编码的字符串太长时发生错误)
encoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.H;//错误效验、错误更正(有4个等级)
encoder.QRCodeBackgroundColor = Color.White;
encoder.QRCodeForegroundColor = Color.Black;
System.Drawing.Image image = encoder.Encode(qrdata, Encoding.UTF8);
Graphics g = Graphics.FromImage(image);
int width1 = image.Width / 4;
int height1 = image.Height / 4;
int x = image.Width / 2 - width1 / 2;
int y = image.Height / 2 - height1 / 2;
g.FillRectangle(new SolidBrush(Color.White), x, y, width1, height1);
Bitmap copyImage = new Bitmap(logo, width1 - image.Width / 40, height1 - image.Height / 40);
g.DrawImage(copyImage, x + image.Width / 40 / 2, y + image.Height / 40 / 2);
copyImage.Dispose();
g.Dispose();
return image;
}
catch (Exception e)
{
throw e;
//一些操作
}
}

参考文档:
达梦数据库 | 使用DM数据迁移工具迁移CSFrameworkV6数据库|C/S框架网|C/S开发框架
使用DeepSeek生成DevExpress表格、窗体、C#模型代码并集成到开发框架|C/S开发框架
CSFrameworkV6快速开发框架 | 使用PostgreSql 数据库测试报告|C/S开发框架
使用Photoshop PS制作GIF动画(等待窗体GIF图标)|C/S开发框架
Oracle数据库名称有小数点,使用expdp备份失败:ORA|12154: TNS: 无法解析指定的连接标识符|C/S开发框架
ORACLE 使用 expdp 命令导出dmp数据库文件|C/S开发框架
达梦数据库使用DmBulkCopy批导数据解决方案|C/S开发框架
.NET Reactor(.NET混淆器)加壳软件使用|C/S开发框架
CSFramework开发框架使用.NET Reactor加壳软件导致多语言失效|C/S开发框架
ISID字段介绍,能直接用ISID字段作为主键使用吗?|C/S开发框架
CSFramework软件开发框架 | 使用扩展角色实现自定义权限控制|C/S开发框架
达梦数据库 | DM管理工具使用指南|C/S框架网|C/S开发框架
使用.NET8/EFCore访问达梦数据库|C/S框架网|C/S开发框架
C/S架构软件开发平台旗舰版V6.0 | 使用FastReport.NET制作二维码报表|C/S开发框架
单表基础资料窗体使用res模型案例|C/S开发框架
SQLSERVER:误删Windows登录用户而sa禁用,导致无法使用Windows身份验证解决方案|C/S开发框架
达梦数据库 | 使用DM数据迁移工具迁移CSFrameworkV6数据库|C/S框架网|C/S开发框架
使用DeepSeek生成DevExpress表格、窗体、C#模型代码并集成到开发框架|C/S开发框架
CSFrameworkV6快速开发框架 | 使用PostgreSql 数据库测试报告|C/S开发框架
使用Photoshop PS制作GIF动画(等待窗体GIF图标)|C/S开发框架
Oracle数据库名称有小数点,使用expdp备份失败:ORA|12154: TNS: 无法解析指定的连接标识符|C/S开发框架
ORACLE 使用 expdp 命令导出dmp数据库文件|C/S开发框架
达梦数据库使用DmBulkCopy批导数据解决方案|C/S开发框架
.NET Reactor(.NET混淆器)加壳软件使用|C/S开发框架
CSFramework开发框架使用.NET Reactor加壳软件导致多语言失效|C/S开发框架
ISID字段介绍,能直接用ISID字段作为主键使用吗?|C/S开发框架
CSFramework软件开发框架 | 使用扩展角色实现自定义权限控制|C/S开发框架
达梦数据库 | DM管理工具使用指南|C/S框架网|C/S开发框架
使用.NET8/EFCore访问达梦数据库|C/S框架网|C/S开发框架
C/S架构软件开发平台旗舰版V6.0 | 使用FastReport.NET制作二维码报表|C/S开发框架
单表基础资料窗体使用res模型案例|C/S开发框架
SQLSERVER:误删Windows登录用户而sa禁用,导致无法使用Windows身份验证解决方案|C/S开发框架
其它资料:
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 |
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 |
在线客服



