提取 SVG 中元素如何解决引用其他元素的问题?

2020 年 12 月 3 日
 salamanderMH

就想提取 SVG 中第一层的元素,像下面的 SVG:

<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
   <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="78" y1="269.543" x2="237" y2="269.543">......</linearGradient>
    <symbol  id="test" viewBox="-16.126 -14.41 32.251 28.819">...</symbol>
    <rect x="78" y="203.043" style="fill:url(#SVGID_1_);" width="159" height="133"/>
    <circle cx="100" cy="50" r="40" stroke="black" stroke-width="2" fill="red" />
    <g>
        <use xlink:href="#test" width="32.251" height="28.819" x="-16.126" y="-14.41" transform="matrix(1 0 0 -1 402.9284 846.39)" style="overflow:visible;"></use>
    </g>
</svg>

要提取rectcircleg元素,但是rect引用了linearGradientg引用了symbol,这个问题咋解决呢?
这个可以把元素转化为 svg 文本,但是没解决引用的问题。

989 次点击
所在节点    问与答
0 条回复

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

https://study.congcong.us/t/731748

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

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

© 2021 V2EX