如:

页面:

http://www.lemongtree.com/ip.aspx?word=

其实原理很简单,得到来访者的IP/OS/Language/Browser,利用Image/Graphics类进行处理

代码如下:

 1using System;
 2using
 System.Collections;
 3using
 System.ComponentModel;
 4using
 System.Data;
 5using
 System.Drawing;
 6using
 System.Web;
 7using
 System.Web.SessionState;
 8using
 System.Web.UI;
 9using
 System.Web.UI.WebControls;
10using
 System.Web.UI.HtmlControls;
11using
 System.IO;
12namespace
 WebApplication4
13
{
14 public class
 ip : System.Web.UI.Page
15 
{
16
  
17  private void Page_Load(object
 sender, System.EventArgs e)
18  
{
19   string str = System.Web.HttpContext.Current.Request.QueryString["word"
];
20   bool cusWord=false
;
21

22   //如果没有自定义文字则不显示,否则只显示前30位

23   if((str==null)||(str.Trim().Length==0))
24   
{
25    str = ""
;
26   }

27   else
28   {
29    if(str.Length>30
)
30    
{
31     str = str.Substring(0,30)+""
;
32    }

33    string badword =System.Configuration.ConfigurationSettings.AppSettings["badwords"];
34

35    //过滤不健康词语

36    for(int i=0;i<badword.Split('|').Length;i++)
37    
{
38     str = str.Replace(badword.Split('|')[i],"[脏话,已被过滤]"
);
39    }

40    cusWord=true;
41   }

42   //获取来访者的相关信息
43   string IP = "Your IP:"+Request.UserHostAddress;
44   string Language = "Language:" + Request.UserLanguages[0
];
45   string OS = "Your Os:" +
Request.Browser.Platform;
46   string Browser = "Browser:" + Request.Browser.Browser + " " +
 Request.Browser.Version;
47
  
48   //初始化一个Image对象

49   System.Drawing.Image copyImage = System.Drawing.Image.FromFile(Server.MapPath("ip.jpg"));
50   Graphics g =
 Graphics.FromImage(copyImage);
51   g.DrawImage(copyImage, 00
, copyImage.Width, copyImage.Height);
52   Font f = new Font("courier new",8
,System.Drawing.FontStyle.Bold);
53   Font f1 = new Font("宋体",9
,System.Drawing.FontStyle.Underline);
54   Brush b1 = new
 SolidBrush(Color.Blue);
55   Brush b2 = new
 SolidBrush(Color.Red);
56   Brush b3 = new
 SolidBrush(Color.Green);
57   Brush b4 = new
 SolidBrush(Color.Black);
58   if
(cusWord)
59   
{
60    g.DrawString(str, f1, b4, 805
);
61    g.DrawString(IP, f, b1, 8018
);
62    g.DrawString(OS, f, b2, 8030
);
63    g.DrawString(Language, f, b2, 8042
);
64    g.DrawString(Browser, f, b3, 8054
);
65   }

66   else
67   {
68    g.DrawString(IP, f, b1, 8010
);
69    g.DrawString(OS, f, b2, 8025
);
70    g.DrawString(Language, f, b2, 8040
);
71    g.DrawString(Browser, f, b3, 8055
);
72   }

73   g.Dispose();
74

75   System.IO.MemoryStream ms = new
 System.IO.MemoryStream();
76
   copyImage.Save(ms,System.Drawing.Imaging.ImageFormat.Jpeg);
77
   Response.ClearContent();
78   Response.ContentType = "image/Jpeg"
;
79
   Response.BinaryWrite(ms.ToArray());
80

81

82  }

83
84  Web

97 }

98}