简单的Captcha和不同的颜色

use*_*704 2 java graphics captcha servlets simplecaptcha

我刚刚看到链接为http://simplecaptcha.sourceforge.net/,它给出了一些图像的演示,显示验证码可以设计为彩色的,因此它不仅可以是黑色和白色.但由于某种原因,我找不到任何关于如何控制SimpleCaptcha颜色的教程:(如果你知道一些片段或教程请分享它们.

所有有用的评论都赞赏:)

jto*_*ron 6

你想要哪个部分的颜色?例如,您可以通过a控制文本的颜色WordRenderer.Captcha.Builder可以在他们的网站上找到如何使用他们的例子.您可以在以下任何示例中添加以下内容:

List<java.awt.Color> textColors = Arrays.asList(
     Color.BLACK, Color.BLUE, Color.RED);
List<java.awt.Font> textFonts = Arrays.asList(
     new Font("Arial", Font.BOLD, 40), 
     new Font("Courier", Font.BOLD, 40));

java.awt.Color backgroundColor = Color.ORANGE;

Captcha captcha = new Captcha.Builder(200, 50)
    .addText(
        new DefaultTextProducer(), 
        new DefaultWordRenderer(textColors, textFonts))
    .addBackground(new FlatColorBackgroundProducer(backgroundColor))
    .build();
Run Code Online (Sandbox Code Playgroud)

DefaultWordRenderer接受一种List颜色和字体,以便您可以根据请求随机选择多种颜色/字体.所以,如果你只提供一种颜色和字体,那么你每次都会得到它们.如果您提供五种颜色和一种字体,那么每次都会得到相同的字体,但颜色将从您提供的五种颜色中随机选择.

上面的示例使用FlatColorBackgroundProducer,但还有其他选项,包括GradiatedBackgroundProducerSquigglesBackgroundProducer.