ZhiYeJianKang_PeiXun/Song.Site/Pay/Weixin/MakeQRCode.aspx.cs
2025-02-20 15:41:53 +08:00

59 lines
2.3 KiB
C#

using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Text;
//using ThoughtWorks;
//using ThoughtWorks.QRCode;
//using ThoughtWorks.QRCode.Codec;
//using ThoughtWorks.QRCode.Codec.Data;
using WeiSha.Common;
using Song.ServiceInterfaces;
using Song.Entities;
namespace WxPayAPI
{
public partial class MakeQRCode : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(Request.QueryString["data"]))
{
string str = Request.QueryString["data"];
//
Song.Entities.Organization org = Business.Do<IOrganization>().OrganCurrent();
//各项配置
WeiSha.Common.CustomConfig config = CustomConfig.Load(org.Org_Config); //自定义配置项
string color = config["QrColor"].Value.String; //二维码前景色
bool isQrcenter = config["IsQrConterImage"].Value.Boolean ?? false; //是否启用中心图片
string centerImg = Upload.Get["Org"].Virtual + config["QrConterImage"].Value.String; //中心图片
centerImg = WeiSha.Common.Server.MapPath(centerImg);
System.Drawing.Image image = WeiSha.Common.QrcodeHepler.Encode(str, 200, centerImg, "", "#fff");
////初始化二维码生成工具
//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(str, Encoding.Default);
//保存为PNG到内存流
MemoryStream ms = new MemoryStream();
image.Save(ms, ImageFormat.Png);
//输出二维码图片
Response.BinaryWrite(ms.GetBuffer());
Response.End();
}
}
}
}