我想使用剪辑路径在另一个图像后面显示图像。
我正在使用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>
答案 0 :(得分:1)
不,如果你想要渐变,你必须使用<mask>
,<clipPath>
只考虑里面形状的几何形状。