我面临着挑战,但是不幸的是,我倾向于在视觉上吸引人。我需要从两个不同供应商的此类图像库中分别获取两个单独的SVG图像,每个图像可能具有各自的坐标系,并按照以下方式进行组合。我可以依靠一些东西:
我需要在自己的小步骤中应用以下规则:
到目前为止,我似乎还无法真正找到嵌套SVG的正确模式,大多数在线教程提供的示例甚至都无法在任何免费的在线svg编辑器中进行渲染。我被困住了,甚至不确定如何开始。通常,我会在其中一个问题中放入一些示例代码,但是目前,似乎没有一个问题甚至可以解决。
供应商A图标如下所示:
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="100" height="100" viewBox="0 0 100 100">
<g>
<g transform="translate(50 50) scale(0.69 0.69) rotate(0) translate(-50 -50)" style="fill:#0059B3">
<svg fill="#0059B3" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" x="0px" y="0px" viewBox="0 0 50 50" enable-background="new 0 0 50 50" xml:space="preserve">
<rect width="100" height="100" style="fill:rgb(0,0,0);stroke-width:3;stroke:rgb(0,0,0)" />
</svg>
</g>
</g>
</svg>
供应商B图标如下所示:
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="100" height="100" viewBox="0 0 100 100">
<rect width="100" height="100" style="fill:rgb(0,0,255);stroke-width:3;stroke:rgb(0,0,0)" />
</svg>
我需要将两者结合起来,以便第二个位于第一个的左下象限的顶部。如果可能的话,首先需要在不更改内部svg文本的情况下应用颜色更改。展示这一点超出了我在Microsoft Paint中的能力,但我希望这很清楚。
答案 0 :(得分:1)
正如我在评论中告诉您的那样,您需要在<symbol>
个元素中转换SVG,然后<use>
个<symbol>
元素。当您使用具有<symbol>
属性的viewBox
时,可以使用width
,height
,x
和{{1 y
元素的}}属性。为了能够更改颜色,您可以在<use>
元素中移动样式。另外,您可以选择表示属性而不是CSS。
<use>
svg{border:1px solid; width:90vh}