Javascript 擦除或使svg路径部分透明

Javascript 擦除或使svg路径部分透明,javascript,jquery,canvas,svg,Javascript,Jquery,Canvas,Svg,我最近开始使用SVG路径。我使用JavaScript SVG和画布,允许用户使用鼠标动态绘制 我的一个问题是,当用户试图绘制一条已经存在的路径时,需要一段时间才能超越它,我想知道是否有一种高效/更平滑的方法来实现这一点 我的另一个问题是删除已经绘制的SVG路径的一部分。我知道我可以使用不同的颜色(例如白色)来透彻绘制路径,但如果存在背景图片,它仍然会遮罩部分背景。是否仍然可以编辑路径的某些部分以使其变为透明,甚至可以删除路径的某些部分 我尝试获取画布的背景色,并使用该颜色绘制路径,但它仅获取原始

我最近开始使用SVG路径。我使用JavaScript SVG和画布,允许用户使用鼠标动态绘制

我的一个问题是,当用户试图绘制一条已经存在的路径时,需要一段时间才能超越它,我想知道是否有一种高效/更平滑的方法来实现这一点

我的另一个问题是删除已经绘制的SVG路径的一部分。我知道我可以使用不同的颜色(例如白色)来透彻绘制路径,但如果存在背景图片,它仍然会遮罩部分背景。是否仍然可以编辑路径的某些部分以使其变为透明,甚至可以删除路径的某些部分

我尝试获取画布的背景色,并使用该颜色绘制路径,但它仅获取原始点的颜色


谢谢。

下面是一个目前对我有效的解决方案

  • 在javascript文件中,将创建一个数组。还有一个柜台

    var-idArray=new-Array()
    var idCounter=0

  • 创建路径时,会将id推送到阵列

    idArray.push(idCounter)

  • 然后使用
    “Name\u of_path”.attr('id',idCounter)设置路径的id

  • 现在,通过使用计数器
    i
    i
    在ID上循环,您可以找到单击的路径并将其删除


    for(var i=0;i当前对我有效的解决方案如下

    • 在javascript文件中,创建了一个数组。还有一个计数器

      var-idArray=new-Array();

      var idCounter=0;

    • 创建路径时,会将id推送到阵列

      idArray.push(idCounter);

    • 然后使用
      “路径的名称”。attr('id',idCounter);
      设置路径的id

    • 现在,通过使用计数器
      i
      i
      在ID上循环,您可以找到单击的路径并将其删除

      for(var i=0;i)是一个js库,可以轻松选择子路径。然后可以将路径拆分为两个子路径,不包括已擦除的部分。是一个js库,可以轻松选择子路径。然后可以将路径拆分为两个子路径,不包括已擦除的部分。