82 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			82 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			C#
		
	
	
	
| using BLL;
 | |
| using System;
 | |
| using System.IO;
 | |
| using System.Text;
 | |
| using System.Web.UI;
 | |
| using ThoughtWorks.QRCode.Codec;
 | |
| 
 | |
| namespace FineUIPro.Web.Controls
 | |
| {
 | |
|     public partial class ShowQRImage : Page
 | |
|     {
 | |
|         #region 自定义
 | |
|         /// <summary>
 | |
|         /// 二维码路径id
 | |
|         /// </summary>
 | |
|         public string FileUrl
 | |
|         {
 | |
|             get
 | |
|             {
 | |
|                 return (string)ViewState["FileUrl"];
 | |
|             }
 | |
|             set
 | |
|             {
 | |
|                 ViewState["FileUrl"] = value;
 | |
|             }
 | |
|         }
 | |
|         #endregion
 | |
| 
 | |
|         protected void Page_Load(object sender, EventArgs e)
 | |
|         {
 | |
|             if (!IsPostBack)
 | |
|             {
 | |
|                 this.txtName.InnerText = System.Web.HttpUtility.UrlDecode(Request.Params["title"]);
 | |
|                 this.FileUrl = "FileUpload\\ShowQRImage\\";
 | |
|                 string urlName = Request.Params["urlName"];               
 | |
|                 string filePath = this.FileUrl + urlName + ".jpg";
 | |
|                 if (!File.Exists(Funs.RootPath + filePath))
 | |
|                 {
 | |
|                     this.CreateCode_Simple(Request.Params["strValue"], urlName);
 | |
|                 }
 | |
| 
 | |
|                 this.divBeImageUrl.InnerHtml = UploadAttachmentService.ShowImage("../", filePath, 280, 280);
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 生成二维码方法
 | |
|         /// </summary>
 | |
|         /// <param name="nr"></param>
 | |
|         /// <param name="urlName"></param>
 | |
|         private void CreateCode_Simple(string nr, string urlName)
 | |
|         {
 | |
|             string imageUrl = string.Empty;
 | |
|             QRCodeEncoder qrCodeEncoder = new QRCodeEncoder
 | |
|             {
 | |
|                 QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE,
 | |
|                 QRCodeScale = nr.Length,
 | |
|                 QRCodeVersion = 0,
 | |
|                 QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M
 | |
|             };
 | |
|             System.Drawing.Image image = qrCodeEncoder.Encode(nr, Encoding.UTF8);
 | |
|             
 | |
|             string filepath = Funs.RootPath + this.FileUrl;
 | |
|             ////如果文件夹不存在,则创建
 | |
|             if (!Directory.Exists(filepath))
 | |
|             {
 | |
|                 Directory.CreateDirectory(filepath);
 | |
|             }
 | |
| 
 | |
|             string filename = urlName + ".jpg";
 | |
|             imageUrl = filepath + filename;
 | |
| 
 | |
|             FileStream fs = new FileStream(imageUrl, FileMode.OpenOrCreate, FileAccess.Write);
 | |
|             image.Save(fs, System.Drawing.Imaging.ImageFormat.Jpeg);
 | |
| 
 | |
|             fs.Close();
 | |
|             image.Dispose();
 | |
|             
 | |
|         }
 | |
|     }
 | |
| }
 |