PHP前端开发

HTML5利用canvas绘制哆啦A梦头部(代码实例)

百变鹏仔 4周前 (09-22) #HTML
文章标签 头部

html5的canvas是很强大的,下面本篇文章使用html5 canvas 实现一个简单的哆啦A梦头部。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

效果如下:

代码如下:

立即学习“前端免费学习笔记(深入)”;

<div class="doraemon">    <canvas id="face" width="600" height="1500">您的浏览器不支持canvas</canvas></div><script>       var face = document.getElementById(&#39;face&#39;).getContext("2d");       face.arc(252,252,250,0,360*Math.PI/180);        face.fillStyle = &#39;#07beea&#39;;  //设置填充颜色         face.fill();  //填充         face.lineWidth = 2;   //轮廓线宽度         face.strokeStyle = &#39;#333&#39;;   //轮廓线颜色         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 = &#39;#fff&#39;;        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 = &#39;#fff&#39;;        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 = &#39;#333&#39;;            face.fill();         face.beginPath();    //鼻子          face.arc(250,197,25,0,360*Math.PI/180);            face.fillStyle = &#39;#c93e00&#39;;            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,&#39;#fff&#39;);         grd.addColorStop(1,&#39;#c93e00&#39;);         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>

更多编程相关知识,请访问:编程视频!!