是否需要为以下代码设置beginPath()和closePath()?
context.strokeStyle = "green";
context.strokeRect(x, y, width, height);
答案 0 :(得分:0)
不,strokeRect
不会像rect
那样向路径添加任何内容。将其视为对上下文的一次性直接操作。
<强>&#34;附录&#34; 强>:
closePath
用于将路径中的第一个点与路径中的最后一个点或子路径(即关闭路径)相连接。矩形已经是一个封闭的子路径。 fill()(和clip())将为您关闭临时路径。这是因为通过开放路径填充形状是不可能的。临时意味着它仅在内部完成,填充完成后路径保持不变。但是如果你打算关闭形状(路径),你需要它用于笔画,你需要在调用stroke()之前调用它。
我看到很多人在完成填充/描边后调用了这个,这有点毫无意义 - 但在填充时并不是真的需要(这开始让人感到困惑吗?:))
beginPath
清除路径,但同样不需要不向路径添加任何内容的方法(strokeRect,fillRect,strokeText,fillText等)