您的位置:首页 > 编程语言 > ASP

ASP.NET 图片加水印防盗链

2011-12-19 16:25 183 查看
首先建一个类:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Drawing;

/// <summary>

///Class1 的摘要说明

/// </summary>

public class Class1:IHttpHandler //调用接口

{

public Class1()

{

//

//TODO: 在此处添加构造函数逻辑

//

}

public bool IsReusable

{

get { return true; }

}

public void ProcessRequest(HttpContext context)

{

HttpRequest req = context.Request;

if (req.UrlReferrer != null && req.UrlReferrer.Host.Length > 0) //反盗链代码判断

{

System.Drawing.Image img = System.Drawing.Image.FromFile(context.Request.PhysicalPath);

System.Drawing.Graphics g = Graphics.FromImage(img);

g.DrawString("三国演义", new Font("宋体", 20, FontStyle.Bold), Brushes.White, 10, 10);

img.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);

context.Response.Flush();

context.Response.End();

}

else

{

context.Response.Write("您不能盗链本站图片");

}

}

}

在web.config中注册接口:

<httpHandlers>

<add verb="*" path="images/*.jpg" type="Class1,App_Code"/>

</httpHandlers>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: