[英]clear pixels under a shape in HTML canvas
我正在使用HTML画布和javascript,我需要清除通过关闭路径创建的形状下面的所有像素(例如,我使用flot ,我想要制作圆角,为此,我首先需要通过在角落顶部绘制曲线以移除所需的像素来移除方角。
现在,我这样做只是填充与背景相同颜色的形状,这可以模仿我想要做的事情,但是,它不理想,因为它使得无法将图表置于非固体之上没有看到方角的背景。 我知道有一个clearRect方法可以做我想做的事情,但只有矩形,我需要用任何封闭的形状来做。 有可能,如果是的话,我该怎么做?
brainjam的代码朝着正确的方向前进,但没有完全解决问题。 这是解决方案:
context.save();
context.globalCompositeOperation = 'copy';
context.fillStyle = 'rgba(0,0,0,0)';
//draw shape to cover up stuff underneath
context.fill();
context.restore();
这是一个从画布中清除圆圈的函数示例:
var clearCircle = function(x, y, radius)
{
context.save();
context.globalCompositeOperation = 'destination-out';
context.beginPath();
context.arc(x, y, radius, 0, 2 * Math.PI, false);
context.fill();
context.restore();
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.