以下是一个简单的 Java 验证码实现示例:
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.util.Random;
import javax.imageio.ImageIO;
public class CaptchaGenerator {
    public static BufferedImage generateCaptchaImage(String captchaCode) {
        int width = 200;
        int height = 50;
        BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
        Graphics g = image.getGraphics();
        // 设置背景颜色
        g.setColor(Color.WHITE);
        g.fillRect(0, 0, width, height);
        // 设置边框
        g.setColor(Color.BLACK);
        g.drawRect(0, 0, width - 1, height - 1);
        // 设置字体
        g.setFont(new Font("Times New Roman", Font.BOLD, 40));
        // 绘制验证码
        g.setColor(Color.BLACK);
        g.drawString(captchaCode, 50, 40);
        // 绘制噪点
        Random rnd = new Random();
        for (int i = 0; i < 100; i++) {
            int x = rnd.nextInt(width);
            int y = rnd.nextInt(height);
            g.setColor(new Color(rnd.nextInt(256), rnd.nextInt(256), rnd.nextInt(256)));
            g.drawLine(x, y, x, y);
        }
        g.dispose();
        return image;
    }
}
 
 
这个方法接受一个字符串作为验证码文本,并返回一个绘制了验证码文本和噪点的 BufferedImage 对象。你可以将其保存到文件或将其显示到网页中。以下是一个使用示例:
public static void main(String[] args) throws Exception {
    String captchaCode = generateRandomCode();
    BufferedImage image = CaptchaGenerator.generateCaptchaImage(captchaCode);
    // 保存生成的验证码图片
    ImageIO.write(image, "JPEG", new File("captcha.jpg"));
    // 显示生成的验证码图片
    JFrame frame = new JFrame();
    JLabel label = new JLabel(new ImageIcon(image));
    frame.getContentPane().add(label);
    frame.pack();
    frame.setVisible(true);
}
 
 
在这里,我们首先生成随机的验证码文本,然后使用 CaptchaGenerator 类生成验证码图片。最后,我们将图片保存到文件和显示到 JFrame 中。
效果如下:















![BUUCTF [SWPU2019]神奇的二维码 1](https://img-blog.csdnimg.cn/4e3c891a06fe47079c10692bd4377807.jpeg)




