javascript - 使用 Arc 的 HTML5 Canvas Clip 剪辑错误

标签 javascript html canvas

所以我尝试像这样使用 ctx.clip 和 ctx.arc 裁剪图像:

ctx.beginPath();
ctx.arc(250, 250, 250, -Math.PI / 4, Math.PI / 4);
ctx.clip();
ctx.drawImage(img, 0, 0, canvas.width, canvas.height);

如您所见,我已将开始 Angular 设置为 -45 度,将结束 Angular 设置为 45 度,但我得到的是圆形/半月形的切割,而不是吃 bean 人图形,如果您会看到使用 ctx.fill 填充圆弧。

FIDDLE

为什么会这样,我该如何解决?

提前致谢。

最佳答案

对 HTML5 或 JavaScript 一无所知,我认为您只是没有正确关闭路径。在圆弧后添加ctx.lineTo(250,250);:http://jsfiddle.net/7em21gvk/

关于javascript - 使用 Arc 的 HTML5 Canvas Clip 剪辑错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34250133/

相关文章:

javascript - 使用更改图像隐藏和显示 div

javascript - 如何将 Canvas 元素转换为字符串

javascript - jQuery:按钮仅在单击两次后才提交表单

javascript - 检查所有数组是否有值且不为空

javascript - 使用 z-index 解决方法的 Z-index 绝对定位元素位于父级下方?

javascript - Jquery 在 html() 上添加换行符

javascript - 将图像放入 html Canvas

javascript - 如何使用 Javascript 访问奇怪的 Canvas 中的元素?

javascript - 如何获取 javascript 中组合键的键码?

javascript - 通过 slider 移动更改 slider 值