千家信息网

C#如何创建验证码

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章主要为大家展示了"C#如何创建验证码",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"C#如何创建验证码"这篇文章吧。要完成C#创建验证码,首先,创建
千家信息网最后更新 2026年11月02日C#如何创建验证码

这篇文章主要为大家展示了"C#如何创建验证码",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"C#如何创建验证码"这篇文章吧。

要完成C#创建验证码,首先,创建一个CLASS类,然后需要add Reference的方式添加 System.Drawing(画画的类)。

C#创建验证码代码如下:

  1. /**////<summary>

  2. ///定义显示的随机字符

  3. ///summary>

  4. ///<paramnameparamname="strList">param>

  5. ///<returns>returns>

  6. privatestringimageStr(char[]strList)

  7. ...{

  8. if(strList==null)

  9. strList="1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ".ToCharArray();

  10. intcodeLengh=4;

  11. stringradomCode="";

  12. Randomr=newRandom();

  13. for(inti=0;i<codeLengh;i++)

  14. ...{

  15. radomCode+=strList[r.Next(strList.Length)];

  16. }

  17. returnradomCode;

  18. }

  19. /**////<summary>

  20. ///创建随机验证字符的IMAGE,并保存,同时返回随机字符串

  21. ///summary>

  22. ///<paramnameparamname="iWidth">图片宽度0时,默认为55param>

  23. ///<paramnameparamname="iHeight">图片高度0时,默认为22param>

  24. ///<paramnameparamname="font">字符字体null时,默认为"Arial",12,
    FontStyle.Boldparam>

  25. ///<paramnameparamname="sb">字符颜色null时,默认为红param>

  26. ///<paramnameparamname="ImagePath">需要保存的文件绝对路径param>

  27. ///<paramnameparamname="strList">随即字符库null时,默认为0-9A-Zparam>

  28. ///<returns>返回随机字符串returns>

  29. publicstringcreateImgWithStr
    (intiWidth,intiHeight,Fontfont,SolidBrushsb,stringImagePath,char[]strList)

  30. ...{

  31. if(font==null)

  32. font=newFont("Arial",12,FontStyle.Bold);

  33. if(sb==null)

  34. sb=newSolidBrush(Color.Red);

  35. if(iWidth==0)

  36. iWidth=55;

  37. if(iHeight==0)

  38. iHeight=22;

  39. //得到随机字符串

  40. stringimageString=imageStr(strList);

  41. //定义横向竖向都画4跳线

  42. intlineCount=4;

  43. 这2支笔用来画线条的

  44. Penpen1=newPen(Color.Gold,1);

  45. Penpen2=newPen(Color.Black,2);

  46. //定义图片

  47. Bitmapimage=newBitmap(iWidth,iHeight);

  48. //跟J2ME一样的画笔

  49. GraphicsGraphicsg=Graphics.FromImage(image);

  50. //先画背景色当然你可以自定义下

  51. g.Clear(ColorTranslator.FromHtml("#F0F0F0"));

  52. //确定写字的落点

  53. Rectanglerect=newRectangle(5,2,iWidth,iHeight);

  54. Randomr=newRandom();

  55. //默认随机画横向竖向4条线

  56. for(inti=0;i<lineCount;i++)

  57. ...{

  58. Pointp1=newPoint(0,r.Next(iHeight));

  59. Pointp2=newPoint(iWidth,r.Next(iHeight));

  60. Pointp3=newPoint(r.Next(iWidth),0);

  61. Pointp4=newPoint(r.Next(iWidth),iHeight);

  62. g.DrawLine(pen1,p1,p2);

  63. g.DrawLine(pen2,p3,p4);

  64. }

  65. //写字

  66. g.DrawString(imageString,font,sb,rect);

  67. //删除源文件

  68. if(File.Exists(ImagePath))

  69. File.Delete(ImagePath);

  70. //保存文件,我定义为jpeg格式

  71. image.Save(ImagePath,System.Drawing.Imaging.ImageFormat.Jpeg);

  72. //释放资源

  73. g.Dispose();

  74. image.Dispose();

  75. returnimageString;

  76. }

以上是"C#如何创建验证码"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

字符 验证 C# 内容 图片 字符串 篇文章 文件 横向 写字 学习 帮助 代码 同时 字体 宽度 方式 易懂 更多 条理 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 咖啡网 喔噻互联网科技有限公司 湖南永感互联网科技有限公司 科技互联网产品 互联网金融监管科技数据 互联网和科技创新 北京互联网科技 长亮科技互联网金融 太原新华互联网科技学校怎么样 须眉科技是互联网公司吗 语蝶互联网科技有限公司 工业互联网展湾科技股份有限公司 广州富喜互联网络科技 皮皮虾互联网科技有限公司 美国互联网科技公司 21世纪互联网科技成就 互联网高科技行业有哪些企业 互联网金融运营模式中的金融科技 绵阳真晨互联网科技有限公司 杭州融税互联网科技有限公司 苏州找大状互联网科技有限公司 互联网金融监管科技数据 朗涯互联网科技 青岛中康互联网医疗科技有限公司 中盈科技互联网信息有限公司 茂名市互联网科技产业园 千方科技属于互联网企业吗 深圳育鹏互联网科技有限公司招聘 无锡工业互联网科技有限公司 科技互联网专业工作会议发言稿
0