使用 d3js,如何对 SVG 元素进行渐变填充?

2014-08-10 22:11:32 +08:00
 zhangdiwaa
不知道各位有谁了解,
对SVG对象进行渐变填充,除了使用傻傻的<linearGradient>元素就没有别的更好的方法了吗?

首先SVG元素不能用css3的渐变填充。
目前用d3js绘图,发现d3js没有像raphael.js那样的fill: '45-#f00-#000' 渐变填充方式。想要进行渐变填充,只能使用fill: url(#xxx)外链图片或者svg渐变元素。

真想像css3一样渐变填充SVG元素啊,大家有办法吗?
6384 次点击
所在节点    设计
1 条回复
Arrowing
2014-08-11 09:56:04 +08:00
<svg viewBox="0 -50 550 350" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" shape-rendering="crispEdges">
<rect x="50" y="100" width="450" height="100" fill="url(data:image/svg+xml;base64,DQo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+DQogIDxsaW5lYXJHcmFkaWVudCBpZD0iZGF0YWdyYWQiPg0KICAgIDxzdG9wIHN0b3AtY29sb3I9ImxpbWUiLz4NCiAgICA8c3RvcCBzdG9wLWNvbG9yPSJ3aGl0ZSIgb2Zmc2V0PSIxIi8+DQogIDwvbGluZWFyR3JhZGllbnQ+DQo8L3N2Zz4=#datagrad)"/>
</svg>

哈哈哈。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/127105

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX