利用java生成带有干扰线的网页验证码图片
package imageCreate;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.FileOutputStream;
import java.util.Random;
import javax.imageio.ImageIO;
public class Image { public static void main(String[] args)throws Exception { Image i=new Image();
i.create();
} public void create() throws Exception {
int []a = null;
// 大小
int width = 60;
int height = 30;
// 声明一个图片类型rgb
BufferedImage bi = new BufferedImage(width, height,
BufferedImage.TYPE_INT_BGR);
// 获取画笔
Graphics g = bi.getGraphics();
// 背景色
g.setColor(Color.WHITE); // 画 g.fillRect(0, 0, width, height);
// 字体
g.setFont(new Font("黑体", Font.BOLD, 18)); // 写一个字符到bi
Random r = new Random();
for (int i = 0; i < 4; i++) {
// 生成随机数
int code = r.nextInt(10);// 0---9之间
// 画笔随机色
g.setColor(new Color(r.nextInt(256), r.nextInt(256), r.nextInt(256)));
// 写出字符
g.drawString("" + code, i * 15, 10 + r.nextInt(20)); } //干扰线 for(int i=0;i<12;i++){ g.setColor(new Color(r.nextInt(256), r.nextInt(256), r.nextInt(256)));
//画线
g.drawLine(r.nextInt(60), r.nextInt(30), r.nextInt(60), r.nextInt(30));
}
g.dispose();//图片生成 ImageIO.write(bi,"JPEG", new FileOutputStream("e:/a.jpg"));//设置路径为e:盘下的a.jpg } }
利用java生成带有干扰线的网页验证码图片的更多相关文章
- PHP生成带有干扰线的验证码,干扰点、字符倾斜
PHP生成验证码的类代码,本验证码类支持生成干扰点.干扰线等干扰像素,还可以使字符倾斜.在类中你可以定义验证码宽度.高度.长度.倾斜角度等参数,后附有用法: <?php class class_ ...
- 利用JAVA生成二维码
本文章整理于慕课网的学习视频<JAVA生成二维码>,如果想看视频内容请移步慕课网. 维基百科上对于二维码的解释. 二维条码是指在一维条码的基础上扩展出另一维具有可读性的条码,使用黑白矩形图 ...
- delphi WebBrowser控件上网页验证码图片识别教程(一)
步骤一:获取网页中验证码图片的url地址 在delphi中加入一个BitBtn和一个memo以及WebBrowser控件实现网页中验证码图片的url地址的获取 程序如下:procedure TForm ...
- 利用canvas绘制带干扰线的验证码
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Java生成读取条形码和二维码图片
原文:http://www.open-open.com/code/view/1453520722495 package zxing; import com.google.zxing.BarcodeFo ...
- 利用Java生成UUID
UUID是什么? UUID 是 通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分.其目的,是 ...
- 使用Java生成带有下划线字体的文字
HashMap<TextAttribute, Object> hm = new HashMap<TextAttribute, Object>(); hm.put(TextAtt ...
- 利用java的url实现小型的网页爬虫
暂时还没学处理数据的方法,扒下来的数据还包含html的标签. 后面再学. package com.imooc; import java.io.BufferedReader; import java.i ...
- 如何获取网页验证码图片并保存到本地(Java实现) [问题点数:40分,结帖人lanxuezaipiao]
http://bbs.csdn.net/topics/390426978 public static String readCheckImage(HashMap<String, String&g ...
随机推荐
- 修改vim中的tab为4个空格
记录一下,避免用时还得搜........ 1.临时修改 在vi中,set tabstop=4 或 set ts=4 2.永久修改 vi --version 查看要修改的文件 如果是vim的话,修改~/ ...
- Starting httpd:Could not reliably determine the server's fully qualified domain name
#service httpd start #Starting httpd: httpd: Could not reliably determine the server's fully qualifi ...
- mysql开启慢查询日志
5.1版本之前,在 my.cnf添加如下信息, long_query_time=1 log_slow_queries=/data/mysql/slow.log 5.1版本之后,在 my.cnf添加如下 ...
- 1. 用U盘安装Centos6.5 + Win7 双系统
一. 用U盘安装Centos6.5 + Win7 双系统 准备工作:U盘(8G).需要安装的Centos6.5系统(64bit).EasyBCD(用来修复引导,否则开机只有一个系统). ...
- 【TFS】增加组员,以及用户权限分配
一.创建windows用户. 二.TFS ->组成员资格->双击 项目集合管理员->添加创建的Windows用户(最高权限) 三.设置权限: TFS权限的复杂,其实也不是很复杂,它只 ...
- vs2010 中检测到有潜在危险的 Request.Form 值
解决方法 : 一般在网上搜只有以下两种处理方式: 1.在报错的页面前吧<%Page%>标签中增加validateRequest="false"的属性为false 如下所 ...
- QTestLib Tutorial
本学习指南介绍了如何使用QTestLib框架的一些特性,分为4章: 编写一个单元测试程序 数据驱动测试 模拟GUI事件 重复GUI事件 第一章 编写一个单元测试程序 文件列表: qtestlib/tu ...
- 浅谈AngularJS启动引导过程
我们都知道AngularJS默认会执行app.js来启动整个angular项目,但你知道angular具体执行过程吗? 一.自动引导启动框架 例如我们有如下代码,我们想要完成一个指令功能: <h ...
- AngularJS如何给动态添加的DOM中绑定事件
正常情况(即非动态插入 DOM 对象)下,ng-click 这样的指令之所以有效(即点击之后能调用注册在可见作用域里的方法),是因为 angular 在 compiling phase(编译阶段)将宿 ...
- class之cls
cls代表的是类本身,一般在静态方法中使用