首页前端开发HTMLcanvas中beginPath()和closePath()作用的实例解析

canvas中beginPath()和closePath()作用的实例解析

时间2024-01-23 17:28:35发布访客分类HTML浏览172
导读:收集整理的这篇文章主要介绍了canvas中beginPath( 和closePath( 作用的实例解析,觉得挺不错的,现在分享给大家,也给大家做个参考。本篇文章给大家带来的内容是关于canvas中beginPath( 和closePath(...
收集整理的这篇文章主要介绍了canvas中beginPath()和closePath()作用的实例解析,觉得挺不错的,现在分享给大家,也给大家做个参考。本篇文章给大家带来的内容是关于canvas中beginPath()和closePath()作用的实例解析,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

beginPath的作用很简单,就是开始一段新的路径,但在使用canvas绘图的过程中却非常重要

先来看一小段代码:

VAR ctx=document.getElementById("canvas").getContext("2d");
        ctx.beginPath();
        ctx.rect(150,150,100,100);
        ctx.fillStyle="green";
        ctx.fill();
        ctx.rect(0,0,100,100);
        ctx.fillStyle="yellow";
        ctx.fill();
    

我们的代码没有错误,但得到的却是两个边长100px的黄色的正方形,而不是一绿一黄,这是为什么呢?

事实上,canvas中的绘制方法(fill,stoke),都会以上一次“beginPath”之后的所有路径进行绘制,在上面的代码中第一个矩形fill了两次,第一次绿色,第二次黄色,所以得到了两个黄色矩形,同样的对于画线段,或其他曲线,图形,不管你moveTo到哪,只要你没有beiginPath,你都是在画一条路径。

如果你画的图形和你想象的不一致,记得查看一下beginPath

谈到beginPath就不得不提一下closePath,事实上两者并无关系,closePath的意思是关闭路径,不是结束路径,它只是将路径的终点与起点相连,不是开始一个新路径。

我们在上面代码中第一个fill的后面添加一个closePath,得到的仍是两个黄色矩形。

但我们在后面添加一个beginPath,则得到两个不同颜色的矩形。

总而言之,不要试图通过闭合一段路径来开始新的路径,而且如果你不闭合路径,即使开始新的路径,其也不会闭合。

以上就是canvas中beginPath()和closePath()作用的实例解析的详细内容,更多请关注其它相关文章!

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

上一篇: 如何使用canvas的得到验证码的效...下一篇:HTML5中progress元素的简单了解及...猜你在找的html5相关文章 关于移动端h5开发相关内容总结2022-05-17html5教程-学表单的第二天2018-12-10html5教程-HTML5浏览器支持2018-12-10html5教程-HTML5智能表单2018-12-10html5教程-微信H5使用resLoader实现加载页效果2018-12-10html5教程-day01-初级-JS0-热身运动JS入门教程2018-12-10html5教程-html5shiv.js和respond.min.js2018-12-10html5教程-不同浏览器对于html5 audio标签和音频格式的兼容性2018-12-10html5教程-使用Html5实现手风琴案例2018-12-10html5教程-html5笔记2018-12-10 其他相关热搜词更多phpjavapython程序员load

若转载请注明出处: canvas中beginPath()和closePath()作用的实例解析
本文地址: https://pptw.com/jishu/584457.html
html5播放视频的标签是什么?如何在web页面播放视频呢?(内附实例) html5 frameset标签的替代方案是什么?frameset标签替代的解决办法

游客 回复需填写必要信息