如何更改JCaptcha生成配置?

时间:2010-02-10 04:26:56

标签: java captcha

我已根据Jcaptcha网站上的示例建立了一个Jcaptcha,但我需要使用颜色和字体配置默认的jcaptcha。

我设法找到了这个Configuration Jcaptcha with Spring,但这是使用Spring。我是Java的新手,没有使用Spring,我可以知道如何为我的jcaptcha图像创建新的验证码配置吗?

提前谢谢。

2 个答案:

答案 0 :(得分:4)

您指向的示例确实是Spring Framework。但这不是什么问题。我可以想象一个人可能遇到的困难,谁不知道依赖注入是如何工作的。所以这是以编程方式相同的事情。请注意,为简洁起见,我会简短说明。

  • 您需要从给定的网址com.octo.captcha.image.gimpy.GimpyFactory
  • 创建ImageCaptchaFactory
  • 在实例化验证码引擎时将其提供给ImageCaptchaEngine,即com.octo.captcha.engine.GenericCaptchaEngine
  • 然后将其传递给您的验证码服务com.octo.captcha.service.multitype.GenericManageableCaptchaService

现在关于颜色和字体。您需要向验证码工厂提供有关颜色和字体的信息。怎么样?你去吧,

  • 工厂分别采用对象类型,字生成器和单词到图像合成器,com.octo.captcha.component.wordgenerator.DictionaryWordGeneratorcom.octo.captcha.component.image.wordtoimage.ComposedWordToImage两个参数
  • Word生成器与颜色和字体无关,因此我们留下了word-to-image composer。因此,您需要在实例化时向作曲家提供这些,或者可能有一些可用的setter。查看文档
  • 示例显示了生成随机字体的配置,如果您不希望它读取文档。确切地说,在那里的示例中显示了什么,您将需要使用您选择的可用字体创建com.octo.captcha.component.image.fontgenerator.RandomFontGenerator的实例并将其传递给工厂
  • 很相似,您将实例化相关的颜色对象,查看com.octo.captcha.component.image.backgroundgenerator.UniColorBackgroundGenerator的背景颜色,com.octo.captcha.component.image.color.SingleColorGenerator颜色
  • 对于随机颜色,请查看com.octo.captcha.component.image.color.RandomRangeColorGenerator

答案 1 :(得分:1)

我们可以根据需要更改Jcaptcha图像 检查此页面,然后您可以通过更改颜色生成器,字体生成器,背景生成器和文字生成器来配置验证码

http://instantjavasolutions.blogspot.in/2014/09/how-to-change-jcaptcha-configurations.html