【问题标题】:How to Change the JCaptcha generation configuration?如何更改 JCaptcha 生成配置?
【发布时间】:2018-05-22 11:32:20
【问题描述】:

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

我设法找到了这个Configuration Jcaptcha with Spring,但这是使用 Spring。我是 Java 新手,不使用 Spring,请问如何为我的 jcaptcha 图像创建新的验证码配置?

提前谢谢你。

【问题讨论】:

  • 刚刚看了看这个 jcaptcha 东西的来源,它的设计很糟糕。我希望我能自己写。

标签: java captcha


【解决方案1】:

您所指的示例确实是针对 Spring Framework。但这在这里无关紧要。我可以想象一个人可能会遇到的困难,谁不知道依赖注入是如何工作的。所以这是以编程方式进行的同一件事。请注意,为简洁起见,我将缩短它。

  • 您需要从给定的 URL 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
  • 文字生成器与颜色和字体无关,所以我们留下了文字到图像的合成器。因此,您需要在实例化时将这些提供给作曲家,或者可能有一些可用的设置器。查看文档
  • 该示例显示了生成随机字体的配置,如果您不希望它阅读文档。确切地说,如示例中所示,您需要使用您选择的可用字体创建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

【讨论】:

  • 非常感谢。这真的很有帮助。
【解决方案2】:

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

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

【讨论】:

    猜你喜欢
    • 2012-10-02
    • 1970-01-01
    • 2018-05-19
    • 1970-01-01
    • 1970-01-01
    • 2020-08-04
    • 2015-10-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多