验证码生成器

验证码生成器代码

package com.zgd.learnbase.image;
import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.io.OutputStream;
import java.util.Random;
import javax.imageio.ImageIO;

/**
 * 生成验证码
 */
public class VerifyCode
{
   
    /**
     * 验证码高度
     */
    private int height = 35;
    /**
     * 验证码宽度
     */
    private int width = 70;
    /**
     * 生成验证码字符个数
     */
    private int num = 4;

    /**
     * 干扰线个数
     */
    private int lineNum = 3;

    /**
     * 随机数生成对象
     */
    private Random random = new Random();

    /**
     * 字体样式名称: "宋体", "华为楷体", "黑体", "微软雅黑", "楷体", "楷体_GB2312"
     */
    private String[] fontNames = new String[]
    {
    "宋体", "华为楷体", "黑体"
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,关于验证码生成器的问题,你可以使用 Python 中的 Pillow 库来生成验证码。下面是一个简单的示例代码: ```python from PIL import Image, ImageDraw, ImageFont import random # 随机生成 4 个字符作为验证码 def generate_code(): code = '' for i in range(4): code += chr(random.randint(65, 90)) return code # 生成验证码图片 def generate_image(code): # 设置图片大小和背景色 width, height = 120, 50 bgcolor = (255, 255, 255) # 创建 Image 对象 image = Image.new('RGB', (width, height), bgcolor) # 创建 Draw 对象 draw = ImageDraw.Draw(image) # 设置字体和字体大小 font = ImageFont.truetype('arial.ttf', 36) # 在图片上绘制验证码 for i in range(4): draw.text((10 + i * 25, 10), code[i], font=font, fill=random_color()) # 添加干扰点和线条 for i in range(random.randint(100, 150)): draw.point((random.randint(0, width), random.randint(0, height)), fill=random_color()) for i in range(random.randint(3, 5)): start = (random.randint(0, width), random.randint(0, height)) end = (random.randint(0, width), random.randint(0, height)) draw.line([start, end], fill=random_color(), width=2) # 保存图片 image.save('code.png') # 随机生成颜色 def random_color(): return (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)) # 测试 if __name__ == '__main__': code = generate_code() generate_image(code) print(code) ``` 这个示例代码会生成一个包含 4 个随机字符的验证码图片,并保存为 `code.png` 文件。你可以根据需要修改图片大小、字体、干扰点和线条等参数。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值