验证码的图片背景颜色

waterwood1998 2004-09-27 04:53:32
我想把验证码的背景颜色改为蓝色以和页面统一,但不知怎么改。大家帮忙。谢谢!

private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
// RndNum是一个自定义函数
string VNum = RndNum(5);
Session["VNum"] = VNum;
ValidateCode(VNum);

}
private void ValidateCode(string VNum)
{
//生成验证code
System.Drawing.Bitmap img;
System.Drawing.Graphics g;
System.IO.MemoryStream ms;
int gheight = Convert.ToInt32(VNum.Length*11.5);
//gheight为图片宽度,根据字符长度自动更改图片宽度
img = new Bitmap(gheight,20);
g = Graphics.FromImage(img);
//在矩形内绘制字串(字串,字体,画笔颜色,左上x.左上y)
g.DrawString(VNum,new Font("Arial",10),new SolidBrush(System.Drawing.Color.Red),3,3);
ms = new MemoryStream();
img.Save(ms,ImageFormat.Png);

Response.ClearContent(); //需要输出图象信息 要修改HTTP头
Response.ContentType = "image/gif";
Response.BinaryWrite(ms.ToArray());
g.Dispose();
img.Dispose();
Response.End();
}

// '函数名称:RndNum
// '函数参数:VcodeNum--设定返回随机字符串的位数
// '函数功能:产生数字和字符混合的随机字符串
private string RndNum(int VcodeNum)
{
string Vchar = "0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,W,X,Y,Z" ;
string[] VcArray = Vchar.Split(",".ToCharArray()); //将字符串生成数组
string VNum = "";
int i;
System.Random ro = new Random();
for(i=1;i<VcodeNum;i++)
{
double decA = ro.NextDouble();
VNum = VNum + VcArray[Convert.ToInt32(35*decA)];
}
// For i=1 to VcodeNum
// Randomize
// VNum=VNum & VcArray(Int(35*Rnd)) '数组一般从0开始读取,所以这里为35*Rnd
// Next
return VNum;

}
...全文
870 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
waki 2005-05-05
  • 打赏
  • 举报
回复
使用我新做的验证码控件就行了,免去好多麻烦。
WakiCheckDigit for asp.net 是适合于微软.Net开发平台的Web控件。它能放进Web 工具箱中,并可拖入 WEB 页面进行可视化的设置。它可以方便快速生成验证码,用于用户登录,身份验证等。可防止程序穷举破解用户信息。不用编程,一分钟生成安全验证系统,为你的系统构筑多一道安全防线。
下载地址:
http://www.aspxcontrol.com/download/wakicheckdigit.rar
jmac 2004-09-27
  • 打赏
  • 举报
回复
g = Graphics.FromImage(img);的后页加上
g.FillRectangle(new SolidBrush(Color.White),......)
g.DrawString(.......);
a05 2004-09-27
  • 打赏
  • 举报
回复
g.DrawRec(...);//颜色设置成你的背景色
g.DrawString(VNum,new Font("Arial",10),new SolidBrush(System.Drawing.Color.Red),3,3);
你在这句上面先画一个矩形的背景就可以了

waterwood1998 2004-09-27
  • 打赏
  • 举报
回复
怎么没人回复啊
waterwood1998 2004-09-27
  • 打赏
  • 举报
回复
大家帮忙呀

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧