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


本文摘自PHP中文网,作者不言,侵删。

本篇文章给大家带来的内容是关于canvas中beginPath()和closePath()作用的实例解析,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

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

先来看一小段代码:

1

2

3

4

5

6

7

8

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()作用的实例解析的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

h5的canvas做出圆形进度条并显示数字百分比

html5canvas save如何保存恢复状态?

html5 canvas实现绘制一个像素宽的细线

h5 canvas api中drawimage(图像进行缩放或裁剪)的使用实例

详细介绍7款炫酷的html5 canvas动画特效

javascript canvas方法有哪些

canvas如何设置阴影?canvas设置阴影的方法

利用html5中的canvas绘制笑脸的代码

h5 canvas中fill 与stroke文字效果实现实例

如何用canvas绘制矩形?canvas画矩形的两种方法介绍

更多相关阅读请进入《canvas》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...