二维码中间带图片
这个需要引用第三的二位码库 ThoughtWorks.QRCode.dll
using System; using System.Collections.Generic; using System.Drawing; using System.Linq; using System.Net; using System.Text; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using ThoughtWorks.QRCode.Codec; using System.IO; public partial class Default2 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { string data = "url"; //二维码信息 WebClient webclient = new WebClient(); byte[] imgdata1 = webclient.DownloadData("http://www.baidu.com/img/baidu_sylogo1.gif");//中间的图片 Bitmap img1 = new Bitmap(new MemoryStream(imgdata1)); QRCodeEncoder qrCodeEncoder = new QRCodeEncoder(); qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE; //编码方法 qrCodeEncoder.QRCodeScale = 7; //大小 qrCodeEncoder.QRCodeVersion = 18; //版本 qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M; Bitmap image = qrCodeEncoder.Encode(data, Encoding.UTF8); Graphics g = Graphics.FromImage(image); g.DrawImage(img1, (image.Width - img1.Width) / 2, (image.Height - img1.Height) / 2); System.IO.MemoryStream MStream = new System.IO.MemoryStream(); image.Save(MStream, System.Drawing.Imaging.ImageFormat.Gif); Response.ClearContent(); Response.ContentType = "image/Gif"; Response.BinaryWrite(MStream.ToArray()); } }