为了账号安全,请及时绑定邮箱和手机立即绑定

用背景图像填充SVG路径元素

用背景图像填充SVG路径元素

慕沐林林 2019-06-16 16:23:22
用背景图像填充SVG路径元素是否可以设置background-image为了一个SVG<path>元素?例如,如果我设置元素class="wall",CSS样式.wall {fill: red;}很管用,但是.wall{background-image: url(wall.jpg)}不,也不是.wall {background-color: red;}
查看完整描述

2 回答

?
交互式爱情

TA贡献1712条经验 获得超3个赞

您可以通过将背景设置为花纹:

<defs>
  <pattern id="img1" patternUnits="userSpaceOnUse" width="100" height="100">
    <image xlink:href="wall.jpg" x="0" y="0" width="100" height="100" />
  </pattern></defs>

根据您的图像调整宽度和高度,然后从路径中引用它,如下所示:

<path d="M5,50
         l0,100 l100,0 l0,-100 l-100,0
         M215,100
         a50,50 0 1 1 -100,0 50,50 0 1 1 100,0
         M265,50
         l50,100 l-100,0 l50,-100
         z"
  fill="url(#img1)" />

工作实例


查看完整回答
反对 回复 2019-06-16
?
人到中年有点甜

TA贡献1895条经验 获得超7个赞

“robertc”的答案是SVG,这与D3.js路径代码使用的类似。通过应用以下内容,我成功地为D3.js路径创建了动态def。

我将它定义为:

chart.append("defs")
     .append('pattern')
     .attr('id', 'locked2')
     .attr('patternUnits', 'userSpaceOnUse')
     .attr('width', 4)
     .attr('height', 4)
     .append("image")
     .attr("xlink:href", "locked.png")
     .attr('width', 4)
     .attr('height', 4);


查看完整回答
反对 回复 2019-06-16
  • 2 回答
  • 0 关注
  • 1460 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信