html5的canvas是很强大的,下面本篇文章使用html5 canvas 实现一个简单的哆啦A梦头部。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。
效果如下:
代码如下:
<div class=doraemon> <canvas id=face width=600 height=1500>您的浏览器不支持canvas</canvas> </div> <script> var face = document.getElementById('face').getContext(2d); face.arc(252,252,250,0,360*Math.PI/180); face.fillStyle = '#07beea'; //设置填充颜色 face.fill(); //填充 face.linewidth = 2; //轮廓线宽度 face.strokeStyle = '#333'; //轮廓线颜色 face.stroke(); //画轮廓线 face.beginPath(); //重置当前绘画路径 face.moveto(160,450); //画笔移动到起始点 face.bezierCurveto(0,400,0,110,210,115); //三次贝塞尔曲线(左边) face.lineto(290,115); face.bezierCurveto(500,110,500,400,340,450); face.bezierCurveto(280,470,220,470,160,450); face.fillStyle = '#fff'; face.fill(); face.stroke(); //画出边框 face.beginPath(); //重置当前绘画路径 用于画眼睛和鼻子 face.moveto(150,150); face.lineto(150,100); //左眼左竖线 face.bezierCurveto(160,50,240,50,250,100); //左眼下面 face.lineto(250,150); //左眼右竖线 face.bezierCurveto(240,200,160,200,150,150); //左眼上面 face.moveto(250,150); face.lineto(250,100); //右眼左竖线 face.bezierCurveto(260,50,340,50,350,100); //右眼上面 face.lineto(350,150); //右眼右竖线 face.bezierCurveto(340,200,260,200,250,150); //右眼下面 face.fillStyle = '#fff'; face.fill(); face.stroke(); face.beginPath(); face.arc(225,155,10,0,360*Math.PI/180); //眼珠 face.arc(275,155,10,0,360*Math.PI/180); face.fillStyle = '#333'; face.fill(); face.beginPath(); //鼻子 face.arc(250,197,25,0,360*Math.PI/180); face.fillStyle = '#c93e00'; face.fill(); face.stroke(); face.beginPath(); face.arc(260,190,10,0,360*Math.PI/180); var Grd = face.createradialGradient(260,190,2,260,190,10); //设置内外圆原点和半径 Grd.addColorStop(0,'#fff'); Grd.addColorStop(1,'#c93e00'); face.fillStyle = Grd; face.fill(); //嘴巴 face.beginPath(); face.moveto(250,222); face.lineto(250,395); face.moveto(100,320); face.bezierCurveto(180,420,320,420,400,320); face.linewidth = 3; face.stroke(); //胡须 face.beginPath(); face.moveto(80,200); face.lineto(180,220); face.moveto(80,245); face.lineto(180,245); face.moveto(80,290); face.lineto(180,270); face.moveto(320,220); face.lineto(420,200); face.moveto(320,245); face.lineto(420,245); face.moveto(320,270); face.lineto(420,290); face.stroke(); </script>
更多编程相关知识,请访问:编程视频!!
原文地址:https://www.jb51.cc/html/1206786.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。