绘制已绘制的SVG

时间:2013-05-04 10:31:48

标签: javascript css html5 svg

我想知道是否可以以及如何绘制已绘制的SVG。让我说我已经用SVG绘制了一些东西,但是我想添加另一个元素,不再绘制所有地图或修改原始鳕鱼。

1 个答案:

答案 0 :(得分:1)

是的,可以做到。实际上,这是svg的优势之一。这是一个例子:

<!DOCTYPE html>
<html>
    <head>
        <title>HTML5 SVG demo</title>
    </head>

    <body>
        <h1>SVG DEMO</h1>
        <svg id="circle" height="200" xmlns="http://www.w3.org/2000/svg">
        <circle id="greencircle" cx="30" cy="30" r="30" fill="green" />
        </svg>



        <script type="text/javascript">

            var rect = document.createElementNS('http://www.w3.org/2000/svg', 'rect');
            rect.setAttributeNS(null,"id", "myrect");
            rect.setAttributeNS(null,"fill", "red");
            rect.setAttributeNS(null,"stroke", "black");
            rect.setAttributeNS(null,"stroke-width", "5");
            rect.setAttributeNS(null,"x", "100");
            rect.setAttributeNS(null,"y", "100");
            rect.setAttributeNS(null,"width", "100");
            rect.setAttributeNS(null,"height", "50");
            var svg = document.getElementById("circle");
            svg.appendChild(rect);


        </script>
    </body>
</html>