`

kaptcha中文验证码

    博客分类:
  • java
阅读更多
Java类
目前只支持在windows上运行,因为linux上没有对应的字体,
使用默认字体,可以迁移到任意服务器。
package com.xxx.catcha;

import java.awt.image.BufferedImage;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Properties;

import javax.imageio.ImageIO;

import com.google.code.kaptcha.Producer;
import com.google.code.kaptcha.util.Config;

/**
 * Hello world!
 *
 */
public class App 
{
    public static void main( String[] args ) throws IOException
    {

    	
    	 Properties props = new Properties();
    	 
    	 //可选字符
    	 props.put("kaptcha.textproducer.char.string", "0123456789一二三四五六七八九");
    	 
    	 //验证码字体
    	 props.put("kaptcha.textproducer.font.names", "华文彩云");
    	 
    	 //验证码字数
    	 props.put("kaptcha.textproducer.char.length", "4");
    	 
    	 Config config = new Config(props);
        
        Producer producer = (Producer)config.getProducerImpl();
        
        String capText = producer.createText();

        BufferedImage bi = producer.createImage(capText);
        
        FileOutputStream out = new FileOutputStream("kaptcha.jpg");

        ImageIO.write(bi, "jpg", out);
    }
}



pom.xml文件
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>com.xxx</groupId>
  <artifactId>catcha</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>catcha</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <dependencies>
	  <dependency>
		<groupId>com.github.axet</groupId>
		<artifactId>kaptcha</artifactId>
		<version>0.0.9</version>
	</dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>

分享到:
评论

相关推荐

    kaptcha-2.3.2-google验证码插件

    【kaptcha-2.3.2-google验证码插件】是一个基于Java开发的验证码生成插件,主要用于网站的安全验证,防止恶意自动程序(如机器人)进行非法操作,如批量注册、频繁提交表单等。该插件是Google开发的,因此在安全性和...

    kaptcha验证码使用

    - **内容范围**:定义验证码可能包含的字符集,如数字、字母或中文汉字等。 - **图片尺寸**:包括宽度和高度,可以根据实际需求调整验证码图片的大小。 - **边框样式**:支持设置边框的有无、粗细及颜色。 - **干扰...

    利用kaptcha开源框架实现验证码实例

    对于附带的Java汉字验证码程序,它可能提供了更复杂和安全的验证码生成方式,比如包含汉字,增加了破解难度。使用汉字验证码需要注意的是,需要确保生成的汉字库足够大,且汉字的组合要有一定的随机性,以避免被破解...

    SpringBoot集成kaptcha验证码

    kaptcha支持多种验证码生成算法,包括数字、字母、中文验证码等。同时,kaptcha还提供了多种自定义选项,例如验证码的宽度、高度、边框颜色、文本颜色等。 二、集成方案 要将kaptcha集成到SpringBoot项目中,需要...

    springboot整合kaptcha验证码的示例代码

    Kaptcha 是一个基于 Java 的开源验证码生成工具,可以生成多种类型的验证码,包括数字验证码、字母验证码、中文验证码等。Kaptcha 的优点是可以自定义验证码的样式、颜色、大小等,满足不同的应用场景。 Spring ...

    Kaptcha开发简单实例

    验证码内容的范围(数字,字母,中文汉字!) 验证码图片的大小,边框,边框粗细,边框颜色 验证码的干扰线(可以自己继承com.google.code.kaptcha.NoiseProducer写一个自定义的干扰线) 验证码的样式(鱼眼样式、...

    图形验证码生成合集

    2. **中文验证码**:与常见的字母和数字验证码不同,中文验证码使用汉字,增加了破解的难度,因为需要识别和理解汉字,这对于非中文环境的机器人来说非常困难。在处理中文网站时,使用中文验证码可以提高安全性。 3...

    java实现多种验证码

    对于中文验证码,你需要确保字符集中包含足够的汉字,并且设置合适的字体,以便kaptcha能够正确显示中文: ```java config.setProperty("kaptcha.textproducer.char.string", "汉字字符串..."); config.setProperty...

    java生成验证码的参考资料(中英文验证码)

    1. **随机字符生成**:验证码由一组随机字符组成,可以是数字、字母,也可以包括中文字符。在Java中,可以使用`java.util.Random`类生成随机数,配合字符数组来生成随机字符。 2. **图像创建**:生成的验证码需要...

    springMVC实现图形验证码(kaptcha)代码实例

    它可以生成多种类型的验证码,包括数字、字母、中文等。kaptcha 提供了灵活的配置选项,允许开发者自定义验证码的样式、大小、颜色等属性。 SpringMVC 中使用 kaptcha 要在 SpringMVC 项目中使用 kaptcha,需要...

    java 验证码(有粗线 多条干扰线 噪点 投影 汉字 各项可选择性设置)

    这是经过网上综合修改的,修改测试了一个晚上 有粗线 多条干扰线 ...比如干扰线条数 验证码字符的个数 各条干扰线是否有 投影是否有 图片大小 是否扭曲 汉字是否实现(只有字母和数字)都可以自行更改

    captcha:图形验证码生成工具类,可以自定义图片尺寸,干扰项等等

    简介 captcha是一个图片验证码生成工具库,通过调用ImageCaptchaUtil中的方法来生成验证码...中文 使用例子 //静态图片,支持返回图片的base64,base64Data,byte[] String code = RandomUtil . randomString( 5 ); Stri

    Kaptcha:自己从谷歌代码fork,并添加更多个性化定制

    卡普查 这个库是从谷歌代码分叉的: : ... 在验证码中添加中文字符 字符默认设置为全部中文字符。 ###2。 改进 Text Creator 算法我们不想在一个验证码中包含相同的中文字符(英文字符无关紧要)。

Global site tag (gtag.js) - Google Analytics