正在阅读:ASP.net中随机数应用实例(4)ASP.net中随机数应用实例(4)

2004-02-14 09:34 出处:eNet硅谷动力 作者:七月流火 责任编辑:zwg
ASP.net中随机数应用实例(4)   生成图片的ASP.net页面全部代码如下: < %@ Page Language="C#" Debug="true" Trace="false" TraceMode="SortByCategory"% >< % @Import namespace="System.Drawing" % >< % @Import namespace="System.Drawing.Imaging" % >< % @Import namespace="System.Drawing.Text" % >< % @Import namespace="System.IO" % >< script language=C# runat=server > public void Page_Load(object sender,EventArgs e){ string strNum=GetRandomString(); string strFontName; int iFontSize; int iWidth; int iHeight; strFontName="宋体"; iFontSize=12; iWidth=10*strNum.Length; iHeight=25; Color bgColor=Color.Yellow; Color foreColor=Color.Red; Font foreFont=new Font(strFontName,iFontSize,FontStyle.Bold); Bitmap Pic=new Bitmap(iWidth,iHeight,PixelFormat.Format32bppArgb); Graphics g=Graphics.FromImage(Pic); Rectangle r=new Rectangle(0,0,iWidth,iHeight); g.FillRectangle(new SolidBrush(bgColor),r); g.DrawString(strNum,foreFont,new SolidBrush(foreColor),2,2); MemoryStream mStream=new MemoryStream(); Pic.Save(mStream,ImageFormat.Gif); g.Dispose(); Pic.Dispose(); Response.ClearContent(); Response.ContentType="image/GIF"; Response.BinaryWrite(mStream.ToArray()); Response.End(); } private int []GetRandomArray(int Length,int Up,int Down) { int iFirst=0; int []rtArray=new Int32[Length]; Random ro=new Random(Length*unchecked((int)DateTime.Now.Ticks)); iFirst=ro.Next(Up,Down); rtArray[0]=iFirst; for(int i=1;i< Length;i++) { Random ri=new Random(i*iFirst*unchecked((int)DateTime.Now.Ticks)); rtArray[i]=ri.Next(Up,Down); iFirst=rtArray[i]; } return rtArray; } 其中生成图片的部分相对复杂,但由于不是本文的主题所在,所以本文不对之做详细说明,有兴趣的读者可以参考杜亮编写的《亲密接触ASP.net》一书中的相关内容。

关注我们

最新资讯离线随时看 聊天吐槽赢奖品