# pan-verification-code **Repository Path**: guo-dingyi/pan-verification-code ## Basic Information - **Project Name**: pan-verification-code - **Description**: pan-verification-code 是一个纯粹的用 java语言实现的生成验证码图片的项目,主要使用了java awt技术来实现图片验证码生成,支持以base64或者jpg返回验证码图片 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2023-11-25 - **Last Updated**: 2025-01-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: 验证码, Java ## README # pan-verification-code #### 介绍 pan-verification-code 是一个用 java 语言实现的生成验证码图片的项目 验证码内容通过java.lang.Math.random()进行随机, 验证码图片通过java.awt.Graphics2D进行生成 #### 软件架构 软件架构说明 主要定义了三个接口 1. Picture: 操作图片本身的接口 2. Interfere: 这主要是对验证码图片进行干扰接口 3. VerificationCode: 获取验证码的接口 #### 安装教程 1. 把项目 clone 到本地 2. maven install 到本地的maven仓库 3. 在另一个Maven项目中添加依赖 ```xml com.pan pan-verification-code 1.0-SNAPSHOT ``` #### 使用说明 通过调用PanVerificationCode的两个静态方法获取生成不同类型验证码的VerificationCode对象
1. 字符串验证码:
调用该方法PanVerificationCode.createStringValidateCode()可获取生成字符串编码的VerificationCode对象, 再通过VerificationCode对象生成验证码图片 2. ```java public class Application { public static void main(String[] args) { //获取生成字符串编码的VerificationCode对象 VerificationCode stringVerificationCode = PanVerificationCode.createStringValidateCode(); //使用VerificationCode方法一: 返回base64编码的图片 和 验证码结果 Base64Result base64Result = stringVerificationCode.getBase64(); System.out.println(base64Result.getResult());//验证码结果 System.out.println(base64Result.getImgBase64());//验证码图片的base64编码字符串 //使用VerificationCode方法二: 在指定路径生成验证码的jpg图片,并返回验证码结果 //第一个参数是生成验证码所在文件夹, 第二个参数是验证码图片文件名 String code = stringVerificationCode.get("./result", "StringValidateCode"); System.out.println(code);//这是验证码结果 } } ``` 2. 算式验证码:
调用该方法PanVerificationCode.createComputeValidateCode()可获取生成字符串编码的VerificationCode对象, 再通过VerificationCode对象生成验证码图片 ```java public class Application { public static void main(String[] args) { VerificationCode computeVerificationCode = PanVerificationCode.createComputeValidateCode(); //使用VerificationCode的方法相,请参考上述"1.字符串验证码"例子 //... } } ``` #### 生成效果 ![输入图片说明](https://foruda.gitee.com/images/1701196684869317399/3f1b6cc0_11733094.jpeg "ValidateCode.jpg") #### 参与贡献 #### 特技