代码如下:

package lixin.gan.test;

import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.List;
import java.util.Random; import javax.imageio.ImageIO; public class ValidateCode {
public static void main(String[] args) throws Exception { // 创建一张图片
//BufferedImage(int width, int height, int imageType)
BufferedImage image = new BufferedImage(50, 30, BufferedImage.TYPE_INT_RGB); // 在图片上面创建一个2D的图层
Graphics2D graphics = image.createGraphics(); // 设置图层的左上坐标点,以及宽高
//graphics.fillRect(x, y, width, height);
graphics.fillRect(0, 0, 50, 30); // 创建一种颜色
Color colorBlue = Color.BLACK;
// Color(int r, int g, int b)
Color colorRed = new Color(255, 0, 0); // 设置图层的颜色
//graphics.setColor(Color);
graphics.setColor(colorRed); // 产生随机数
List<Integer> randList = new ArrayList<>();
Random random = new Random();
for (int i = 0; i < 4; i++) {
randList.add(random.nextInt(10));
} // 创建字体
// Font(String name, int style, int size)
Font font = new Font("宋体", Font.ITALIC, 20); // 设置图层使用的字体
graphics.setFont(font); // 将随机数挨个画在图层中
for (int i = 0; i < randList.size(); i++) {
graphics.drawString(randList.get(i)+"", i * 10, 20);
} // 创建输出流
OutputStream outputStream = new FileOutputStream(new File("validateCode.png")); // 将图片保存,并指定图片格式
ImageIO.write(image, "png", outputStream);
}
}

  效果图(白色部分):

  

  

Java 创建一个简单的验证码图片的更多相关文章

  1. java实现一个简单的验证码生成器

    最近看了网上很多大佬们写的验证码生成,寻思着自己也写一个,话不多说,代码如下: import java.awt.BasicStroke; import java.awt.Color; import j ...

  2. java代码实现简单的认证——图片验证码形式

    前言:认证在互联网中会经常见到,其主要作用是安全问题中防止恶意破解.刷票等.在系统开发中认证的实现也有很多种,什么手机短信认证,邮箱认证等.在这里我使用最基本的验证码的形式进行认证,下面例出过程. 验 ...

  3. java最简单的知识之创建一个简单的windows窗口,利用Frame类

    作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 QQ986945193 微博:http://weibo.com/mcxiaobing 首先给大家看一下 ...

  4. 使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(一)

    梳理下使用spring+springMVC+mybatis 整合后的一个简单实例:输入用户的 ID,之后显示用户的信息(此次由于篇幅问题,会分几次进行说明,此次是工程的创建,逆向生成文件以及这个简单查 ...

  5. Flask学习之旅--用 Python + Flask 制作一个简单的验证码系统

    一.写在前面 现在无论大大小小的网站,基本上都会使用验证码,登录的时候要验证,下载的时候要验证,而使用的验证码也从那些简简单单的字符图形验证码“进化”成了需要进行图文识别的验证码.需要拖动滑块的滑动验 ...

  6. Windows 8.1 应用再出发 (WinJS) - 创建一个简单项目

    前面几篇我们介绍了如何利用 C# + XAML 完成Windows Store App 功能的实现,接下来的几篇我们来看看如何利用 Html + WinJS 来完成这些功能. 本篇我们使用WinJS ...

  7. 使用Java编写一个简单的Web的监控系统cpu利用率,cpu温度,总内存大小

    原文:http://www.jb51.net/article/75002.htm 这篇文章主要介绍了使用Java编写一个简单的Web的监控系统的例子,并且将重要信息转为XML通过网页前端显示,非常之实 ...

  8. ADF_General JSF系列1_创建一个简单的JSF Application

    2015-02-17 Creatd By BaoXinjian

  9. IntelliJ IDEA 15 部署Tomcat及创建一个简单的Web工程

    一.部署Tomcat 二.创建一个简单的Web工程 2.1创建一个新工程 创建一个新工程 设置JDK及选择Web Application (创建的是Web工程) 点击Next,选择工作空间,起个工程名 ...

随机推荐

  1. 【前端】js中数组对象根据内容查找符合的第一个对象

    今天在写一个混合开发版的app,其中一个功能是扫描快递单号,客户要求不能扫描重复的快递单号!所有就验证查出. 首先实现思路就是: 1.定义一个全局数组变量:var nubList = []; 2.进入 ...

  2. java-初识引用分类及Map实现类WeakHashMap

    1.同样的,话不多讲直接上代码 (1)认识了解下引用分类及其作用 package com.otherMapProduce; import java.lang.ref.WeakReference; /* ...

  3. linux学习笔记-linux主机上传下载文件至linux虚拟机的方法

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 1.上传文件 scp -r file 用户名@ip地址:目标目录 2.下载文件 scp -r 用户名@ip地址:文件 目标目录

  4. Xamarin 学习笔记 - Layout(布局)

    本文翻译自CodeProject文章:https://www.codeproject.com/Articles/1227733/Xamarin-Notes-Xamarin-Forms-Layouts ...

  5. Redis订阅与发布

    发布与订阅模型在许多编程语言中都有实现,也就是我们经常说的设计模式中的一种--观察者模式.在一些应用场合,例如发送方并不是以固定频率发送消息,如果接收方频繁去咨询发送方,这种操作无疑是很麻烦并且不友好 ...

  6. ICD

    International Classification of Diseases,ICD 国际疾病分类

  7. AngularJS学习之旅—AngularJS HTML DOM(十三)

    1.AngularJS HTML DOM AngularJS 为 HTML DOM 元素的属性提供了绑定应用数据的指令. ng-disabled 指令:ng-disabled 指令直接绑定应用程序数据 ...

  8. LeetCode算法题-Shortest Unsorted Continuous Subarray(Java实现)

    这是悦乐书的第267次更新,第281篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第134题(顺位题号是581).给定一个整数数组,找到一个连续的子数组,按升序对该子数组 ...

  9. 【笔记】Python集成开发环境——PyCharm 2018.3下载、注册、帮助文档

    [博客导航] [Python导航] 前言 使用好的开发环境将有效提高编程效率,在Python使用上我是小白,所以特意请教了从事语言处理的成同学,告知我,推荐使用Pycharm和IntelliJ. 目前 ...

  10. 多线程——multiprocess

    先看个误打误撞的写的代码 import os import time import multiprocessing def func(): print('我是func函数1','现在的father进程 ...