我的编程空间,编程开发者的网络收藏夹
学习永远不晚

jquery canvas绘制图片验证码实例

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

jquery canvas绘制图片验证码实例

本文实例为大家分享了jquery canvas绘制图片验证码的具体代码,供大家参考,具体内容如下

CSS


.identify-code{
    position: absolute;
    right: 6px;
    top: 50%;
    width: 118px;
    height: 40px;
    margin: -21px 0 0 0;
}

HTML


<span id="code" class="identify-code">
  <canvas class="show-captcha" id="canvas" style="width: 100%; height: 100%;"></canvas>
</span>

JS



function drawPic() {
    var canvas = document.getElementById("canvas");
    var width = canvas.width;
    var height = canvas.height;
    //获取该canvas的2D绘图环境 
    var ctx = canvas.getContext('2d'); 
    ctx.textBaseline ='bottom';
    
    ctx.fillStyle = randomColor(180, 240);
    //颜色若太深可能导致看不清
    ctx.fillRect(0,0,width,height);
    
    var str ='ABCEFGHJKLMNPQRSTWXY123456789abcefghjklmnpqrstwxy';
    var code="";
    //生成四个验证码
    for(var i = 1;i <= 4; i++) {
        var txt = str[randomNum(0,str.length)];
        code=code+txt;
        ctx.fillStyle = randomColor(50,160);
        //随机生成字体颜色
        ctx.font = randomNum(90,110) +'px SimHei';
        //随机生成字体大小
        var x = 10 + i * 50;
        var y = randomNum(100, 135);
        var deg = randomNum(-30, 30);
        //修改坐标原点和旋转角度
        ctx.translate(x, y); 
        ctx.rotate(deg * Math.PI /180); 
        ctx.fillText(txt,0,0);
        //恢复坐标原点和旋转角度
        ctx.rotate(-deg * Math.PI /180);
        ctx.translate(-x, -y);
    }
        
    
    for(var i=0;i<3;i++) {
        ctx.strokeStyle = randomColor(40, 180);
        ctx.beginPath();
        ctx.moveTo(randomNum(0,width/2), randomNum(0,height/2));
        ctx.lineTo(randomNum(0,width/2), randomNum(0,height));
        ctx.stroke();
    }
    
    for(var i=0;i <50;i++) {
        ctx.fillStyle = randomColor(255);
        ctx.beginPath();
        ctx.arc(randomNum(0, width), randomNum(0, height),1,0,2* Math.PI);
        ctx.fill();
    }
    return code;
}

function randomNum(min, max) {
    return Math.floor(Math.random() * (max - min) + min);
}

function randomColor(min, max) {
    var r = randomNum(min, max);
    var g = randomNum(min, max);
    var b= randomNum(min, max);
    return "rgb(" + r + "," + g + "," + b + ")";
}

调用实例


$("#code").unbind('click').click(function(e){
    e.preventDefault();
    createCode();
});
//生成验证码
function createCode(){
  VerificationCodeErrCount = 0;
  randomCode = drawPic();
  return randomCode;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

jquery canvas绘制图片验证码实例

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Android绘制验证码的实例代码

在前面仿华为加载动画、仿网易音乐听歌识曲-麦克风动画中,我们通过绘图的基础知识完成了简单的绘制。在本例中,我们将绘制常见的验证码。一、效果图二、知识点与思路分析通过上面的效果图观察,我们可以看到里面有绘制的随机线条,随机绘制的验证码。绘制线
2023-05-31

Android自定义View绘制随机生成图片验证码

本篇文章讲的是Android自定义View之随机生成图片验证码,开发中我们会经常需要随机生成图片验证码,但是这个是其次,主要还是想总结一些自定义View的开发过程以及一些需要注意的地方。 按照惯例先看看效果图:一、先总结下自定义View的步
2022-06-06

android实现图片验证码方法解析(自绘控件)

自绘控件的内容都是自己绘制出来的 大致流程如下: 1.定义一个类继承view 1.使用TypedArray初始化属性集合 在view的构造方法中 有一个AttributeSet的参数 很明显是用来保存控件属性信息的 我们也的确可
2022-06-06

基于jquery实现的上传图片及图片大小验证、图片预览效果代码

基于jquery实现的上传图片及图片大小验证、图片预览效果代码,需要的朋友可以参考下。
2022-11-21

php怎么实现图片验证码

php实现图片验证码的方法:1、加载GD扩展;2、创建画布并在画布上增加内容;3、通过imagepng保存输出;4、释放资源;5、生成随机验证码数据即可。
2017-09-20

java实现动态图片验证码

目的:防止恶意表单注册生成验证码图片1、定义宽高int width = 100;int height = 50;2、使用BufferedImage在内存中生成图片BufferedImage image = new BufferedImage(width, he
java实现动态图片验证码
2019-04-24

Python中怎么制作一个图片验证码

这篇文章给大家介绍Python中怎么制作一个图片验证码,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Pillow库Pillow是一个非常强大的图片处理模块,其中Image是Pillow中最为重要的类,实现了Pillow
2023-06-16

Vue如何实现图片验证码生成

这篇文章主要介绍“Vue如何实现图片验证码生成”,在日常操作中,相信很多人在Vue如何实现图片验证码生成问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Vue如何实现图片验证码生成”的疑惑有所帮助!接下来,请跟
2023-06-29

javaWeb怎么实现随机图片验证码

这篇文章给大家分享的是有关javaWeb怎么实现随机图片验证码的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。实现步骤1:Java后台生成一张随机数字/字母/汉字验证码的图片。2:存入redis或者session。
2023-06-14

编程热搜

目录