Java 之图形验证码

时间:2024-01-01 19:50:09
  1. 图形验证码作用
    • 防止恶意注册
    • 防暴力破解
  2. Java 与图片相关的类: Image, ImageIO, BufferedImage, Icon, ImageIcon
public static void main(String[] args){

    // 得到图片缓冲区
BufferedImage bi = new BufferedImage(150, 70, BufferedImage.TYPE_INT_RGB); // 得到图片的绘制环境 (得到这张图片的笔)
Graphics2D g2 = (Graphics2D) bi.getGraphics(); g2.setColor(Color.WHITE); // 设置笔的颜色
g2.fillRect(0, 0, 150, 70); // 绘制矩形, 使用上面设置的颜色填充(其实就是设置背景色)
g2.setColor(Color.RED); // 设置笔的颜色
g2.drawRect(0, 0, 150-1, 70-1); // 用上面设置的颜色, 绘制边框 g2.setFont(new Font("宋体", Font.PLAIN, 17)); // 设置字体名称, 样式, 大小 g2.setColor(Color.BLACK); // 设置字体颜色
g2.drawString("HelloWorld", 10, 3); // 在图片中写入字符串, 设置 H 的左下角坐标 // 将图片从内存中写入硬盘
ImageIO.write(bi, "JPEG", new FileOutputStream("F:/a.jpg"));
}

**参考资料:**
- [JavaWeb 视频教程](https://www.bilibili.com/video/av12752958/#page=18)
- [图形验证码随机生成工具](http://www.121down.com/soft/softview-82314.html)