Java驗證碼實現-EasyCaptcha

驗證碼EasyCaptcha介紹

EasyCaptcha是一個Java圖形驗證碼庫,支持gif中文算術等類型,可用於Java WebJavaSE等項目。

使用

<dependency>
    <groupId>com.github.whvcse</groupId>
    <artifactId>easy-captcha</artifactId>
    <version>1.6.2</version>
</dependency>

也許下載不下來,可以直接下載 easy-captcha.jar 包.

開發

// PNG格式 設置長寬和驗證碼長度
SpecCaptcha captcha = new SpecCaptcha(180, 40, 6);
// 設置驗證碼字符類型,數字/大小寫字母
captcha.setCharType(Captcha.TYPE_ONLY_NUMBER);

// GIF格式 設置長寬和驗證碼長度
GifCaptcha captcha = new GifCaptcha(180, 48, 6);

// 中文驗證碼 設置長寬和驗證碼長度
ChineseCaptcha captcha = new ChineseCaptcha(180, 48);
// 設置字體, 設置默認字體Captcha.FONT_1...好像有問題,英文可以使用默認字體
captcha.setFont(new Font("楷體", Font.PLAIN, 28));

// 使用算術驗證碼,設置長寬和幾位數運算
ArithmeticCaptcha captcha = new ArithmeticCaptcha(180, 48, 2);
// 獲取運算的公式:3+2=?
captcha.getArithmeticString()

// 通用方法
captcha.text();  // 獲取驗證碼的字符
captcha.textChar();  // 獲取驗證碼的字符數組

// 驗證碼保存到文件
FileOutputStream outputStream = new FileOutputStream(new File("C:/captcha.png"))
captcha.out(outputStream);  // 輸出驗證碼

// 輸出base64編碼, 返回給前端需要用到
specCaptcha.toBase64();

// 如果不想要base64的頭部data:image/png;base64,
specCaptcha.toBase64("");  // 加一個空的參數即可

測試

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章