Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/456.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 画布API,删除重叠数据或合并图像_Javascript_Html_Canvas_Html5 Canvas - Fatal编程技术网

Javascript 画布API,删除重叠数据或合并图像

Javascript 画布API,删除重叠数据或合并图像,javascript,html,canvas,html5-canvas,Javascript,Html,Canvas,Html5 Canvas,我在画布上画了各种各样的圆(弧),偶尔会重叠,我试图找出“合并”任何重叠区域的最佳方法,或者只是不在画布上画这些重叠区域。我曾尝试过GlobalComposite操作、模糊和阴影,但未能达到预期效果。有人有什么建议吗 左边的Img,当前正在发生的事情。右侧Img,理想结果 | 任何帮助都将不胜感激。我相信这是因为您正在绘制的圆圈不透明。最简单的解决方案是将fillStyle设置为绘制不透明度为1的圆。如果你需要它们是半透明的,最好的方法可能是在你画的每个圆圈之前,在相同的位置画一个不透明的白色

我在画布上画了各种各样的圆(弧),偶尔会重叠,我试图找出“合并”任何重叠区域的最佳方法,或者只是不在画布上画这些重叠区域。我曾尝试过GlobalComposite操作、模糊和阴影,但未能达到预期效果。有人有什么建议吗

左边的Img,当前正在发生的事情。右侧Img,理想结果

|


任何帮助都将不胜感激。

我相信这是因为您正在绘制的圆圈不透明。最简单的解决方案是将fillStyle设置为绘制不透明度为1的圆。如果你需要它们是半透明的,最好的方法可能是在你画的每个圆圈之前,在相同的位置画一个不透明的白色圆圈。它们确实需要一定程度的透明度。事先画不透明的白色圆圈的目的是什么?ThanksIt基本上会“擦除”当前圆需要去的地方绘制的圆的任何部分,因此这些圆永远不会重叠。这里有一个小演示,您可以看到它。这也可能有帮助: