2011-07-28 8 views

Respuesta

22

Puede definir el grupo rect usando <defs> así:

<defs> 
    <g id="rect-group"> 
     <rect x="0" y="0" width="60" height="30"/> 
     <rect x="20" y="10" width="20" height="50"/> 
    </g> 
</defs> 

continuación, puede utilizar este grupo varias veces, poniéndolo en diferentes lugares con la transform si te gusta:

<g class="group-1" transform="translate(10.5,20.5)"> 
    <use xlink:href="#rect-group" /> 
</g> 

<g class="group-2" transform="translate(55.5,32.5)"> 
    <use xlink:href="#rect-group" /> 
</g> 

Puede aplicar estilos a estos grupos directamente o asignarles clases diferentes como se indica anteriormente y usar CSS para crear el estilo que desee:

<style> 
    .group-1{ 
     fill: red; 
     stroke: white; 
    } 
    .group-2{ 
     fill: blue; 
     stroke: black; 
    } 
    </style> 

Por ejemplo, ver: http://dl.dropbox.com/u/169269/rect_group.svg

+0

Gracias! ¡Funciona de maravilla! ¿Y podría decir por qué está utilizando transformar y no x/y? –

+0

No creo que puedas agregar x/y a un grupo, ¿o sí? Usar la transformación significa que puede colocar los grupos en diferentes lugares y también hacer cosas como transformar = "rotar (45)" si desea rotar los grupos. –

+0

x/y en grupos funciona bien –

Cuestiones relacionadas