径向梯度Clippath

时间:2015-03-09 14:50:38

标签: svg gradient clip-path

我想使用剪辑路径在另一个图像后面显示图像。

我正在使用svg圈元素。我想要的结果是一个柔和的渐变边缘,而不是clipPath提供的硬边缘。

这可能吗?我知道我可以用掩码做到这一点,但似乎无法使用clipPath。

到目前为止我的代码:

 <svg id="mysvg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"  viewBox="0 0 500 500">
              <defs>

                    <radialGradient id="grad" cx="50%" cy="50%" r="50%">
                      <stop stop-color="white" offset="0%"/>
                      <stop stop-color="black" offset="100%"/>
                    </radialGradient>
                    <clipPath id="clip1" >
                        <circle cx="0" cy="0" r="30" fill="url(#grad)"  />
                    </clipPath>
                </defs>


              <image id="darkMap"  xlink:href="images/darkMapSml.jpg" width="100%" height="100%" ></image>
             <image id="topImg" xlink:href="images/lightMapSml.jpg" width="100%" height="100%" clip-path="url(#clip1)" />


         </svg>

1 个答案:

答案 0 :(得分:1)

不,如果你想要渐变,你必须使用<mask><clipPath>只考虑里面形状的几何形状。