jsp验证码怎么生成,文字图形验证码

  jsp验证码怎么生成,文字图形验证码

  % @页content type= image/JPEG import= Java . awt . *,java.awt.image.*,java.util.*,javax . image io . * " %

  %!

  //由smallnest创建

  //电子邮件:smallnest@gmail.com

  //网址:www.kuaff.com

  //生成随机颜色

  Color getRandColor(Random random,int fc,int bc) {

  if(fc 255)fc=255;

  if(公元前255年)bc=255

  int r=fc random . nextint(BC-fc);

  int g=fc random . nextint(BC-fc);

  int b=fc random . nextint(BC-fc);

  返回新颜色(r,g,b);

  }

  %

  %

  //设置页面不缓存

  response.setHeader(Pragma , No-cache );

  response . set header(“Cache-Control”、“no-Cache”);

  response . set date header( Expires ,0);

  //设置图片的长宽

  int width=176,height=30

  //设置备选汉字,剔除一些不雅的汉字

  string base= \ u 7684 \ u4e 00 \ u4e 86 \ u662f \ u 6211 \ u4e0d \ u 5728 \ u4e ba \ u4eec \ u 6709 \ u 6765 \ u4ed 6 \ u8fd 9 \ u4e0a \ u 7740 \ u4e2a \ u 5730 \ u 5230 \ u 5927 \ u91cc \ u8bf 4 \ u5c 31 \ u

  //备选汉字的长度

  int length=base.length()。

  //创建内存图像

  BufferedImage image=new BufferedImage(宽度,高度,BufferedImage。TYPE _ INT _ RGB);

  //获取图形上下文

  graphics g=image . get graphics();

  //创建随机类的实例

  Random Random=new Random();

  //设定图像背景色(因为是做背景,所以偏淡)

  g.setColor(getRandColor(random,200,250));

  g.fillRect(0,0,width,height);

  //备选字体

  String[] fontTypes={

  \u5b8b\u4f53 , \u65b0\u5b8b\u4f53 , \u9ed1\u4f53 , \ u96b 6 \ u4e 66 };

  int字体类型长度=字体类型。长度;

  //在图片背景上增加噪点

  g.setColor(getRandColor(random,160,200));

  g.setFont(新字体(‘泰晤士新罗马’,字体。平原,14));

  for(int I=0;i i ) {

  g。拉带( * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ,0,5 *(I ^ 2));

  }

  //取随机产生的认证码(6个汉字)

  //保存生成的汉字字符串

  string sRand=

  for(int I=0;i i ) {

  int start=随机。nextint(长度);

  string rand=base。子串(start,start 1);

  sRand=rand

  //设置字体的颜色

  g.setColor(getRandColor(random,10,150));

  //设置字体

  g.setFont(新字体(字体类型【随机。nextint(fontTypesLength)],Font .加粗,18随机。nextint(6)));

  //将此汉字画到图片上

  g.drawString(rand,24 * i 10 random.nextInt(8),24);

  }

  //将认证码存入会议

  session.setAttribute(rand ,sRand);

  g。dispose();

  //输出图象到页面

  ImageIO.write(image, JPEG ,response。获取输出流());

  %

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • qq短信验证码发送失败怎么回事,qq验证码失败是怎么回事
  • ,,使用阿里大于(大鱼)平台进行发送手机验证码的流程
  • ,,SpringSceurity实现短信验证码登陆
  • android读取短信验证码,
  • android读取短信验证码,,Android使用MobSDK短信验证
  • android自动获取短信验证码功能在哪,安卓自动获取短信验证码
  • android自动获取短信验证码功能在哪,android自动获取短信验证码功能失效,Android自动获取短信验证码功能
  • android实现短信验证码自动填写功能是什么,安卓短信验证码自动填充 实现
  • android实现短信验证码自动填写功能是什么,安卓短信验证码自动填充 实现,Android实现短信验证码自动填写功能
  • android如何通过手机自动获取短信验证码信息,安卓自动获取短信验证码
  • android如何通过手机自动获取短信验证码信息,安卓自动获取短信验证码,Android如何通过手机自动获取短信验证码
  • ,,python网络爬虫实现发送短信验证码的方法
  • ,,Python实现滑块拼图验证码详解
  • ,,python3 破解 geetest(极验)的滑块验证码功能
  • 发验证码不在桌面显示,验证码能收到桌面上不显示怎么回事
  • 留言与评论(共有 条评论)
       
    验证码: