svgCaptcha的文档只提供了背景颜色的修改,字体的颜色在代码中为fill属性,所以我们可以这样写:
var captcha = svgCaptcha.create({
size: 5, ignoreChars: 'oOIil1',
noise: 0, background: '#7a96c1',
height: 40, width: 120,
fontSize: 45,
color: true
});
captcha.data = captcha.data.replace(/fill="#[A-Fa-f0-9]{6}"/g, 'fill="#FF0000"');
最后一句通过正则表达式将验证码所有fill的值修改为#FF0000,红色。
然后回到页面,你看到的是这样:
这是因为背景颜色也被覆盖了,所以我们修改一下正则表达式:
captcha.data = captcha.data.replace(/fill="#(?!(?:7a96c1))([A-Fa-f0-9]{6})"/g, 'fill="#FF0000"');
现在我们排除了fill值为#7a96c1的部分,要排除的色值就是上面定义的background。
现在页面是这样的:
不过一般情况下也不会把验证码的字体颜色统一。。。