将图像添加到SVG圈子

时间:2016-12-01 09:18:53

标签: javascript html css svg

我试图将一些背景图片添加到SVG个节点" circle"。

我已经阅读了很多stackoverflow的答案,每个人都说我们需要在a中添加一个节点来定义我们的图像。

我试过了,但我的图片根本没有显示。

以下是我的代码的一小部分:https://jsfiddle.net/baapu6wz/

我错过了什么?

<svg baseProfile="full" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" height="390" width="1629">
<g transform="translate(40,0)">
    <g>
        <line y2="149.3060251652327" x2="819.8567597731511" y1="222.22245513917517" x1="854.7332277213098" style="stroke: #999;" stroke-width="5"></line>
        <line y2="213.47136779636722" x2="768.9096407109324" y1="213.47136779636722" x1="768.9096407109324" style="stroke: #999;" stroke-width="5"></line>
        <line y2="213.47136779636722" x2="768.9096407109324" y1="149.3060251652327" x1="819.8567597731511" style="stroke: #999;" stroke-width="5"></line>
    </g>
    <g>
        <g transform="translate(854.7332277213098, 222.22245513917517)">
            <circle fill="url(#image1);" fillOpacity="0.5" r="16"></circle>
            <text x="20" dy="3">pagx</text>
        </g>
        <g transform="translate(768.9096407109324, 213.47136779636722)">
            <circle fill="url(#image1);" fillOpacity="0.5" r="10"></circle>
            <text x="20" dy="3">xzreds</text>
        </g>
        <g transform="translate(819.8567597731511, 149.3060251652327)">
            <circle fill="url(#image1);" fillOpacity="0.5" r="14"></circle>
            <text x="20" dy="3">jzkcwv</text>
        </g>
    </g>
</g>
<defs>
    <pattern width="16" height="16" patternUnits="userSpaceOnUse" y="0" x="0" id="image1">
        <image xlink:href="https://www.google.fr/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png" height="16" width="16" y="0" x="0"></image>
    </pattern>
</defs>

1 个答案:

答案 0 :(得分:2)

你有一个错字。

fill="url(#image1);"

应该是

fill="url(#image1)"

删除分号。

https://jsfiddle.net/baapu6wz/1/