2012-09-06 2 views
1

Je me prépare pour un examen et l'une des questions à un examen précédent était de reproduire ce chiffre en SVG (dimensions peuvent être librement choisis):Reproduire une figure SVG

enter image description here

Jusqu'à présent, J'ai été un succès mais actuellement je suis coincé. Je ne peux pas l'air d'être en mesure de « couper » de la figure sur le fond:
enter image description here

Voici le code utilisé i:

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="..."> 
    <svg width="200px" height="200px" viewBox="0 0 200 200"> 
     <defs> 
      <g id="circle"> 
       <circle r="100px" cx="0" cy="0" /> 
      </g> 
     </defs> 

     <use xlink:href="#circle" x="0" y="75"/> 
     <use xlink:href="#circle" transform="translate(200,75)"/> 
    </svg> 
</svg> 

J'ai essayé de déconner avec le viewBox, mais en vain.
Toute aide/conseils/conseils appréciés.

+0

Par curiosité: quel examen du cours (merveilleux) vous demande de main code SVG? – Phrogz

+0

@Phrogz Le cours est appelé traitement de document et dans les premiers chapitres XML et XSLT (entre autres choses) sont introduits. La partie SVG est une très, très petite partie du cours. Dans cet exercice, nous avons obtenu une représentation de la figure en XML pour laquelle nous avons dû écrire un XSLT pour transformer le code XML en code SVG. Ce n'est pas trop dur et je peux supposer que pas beaucoup de gens code svg à la main :) – Aerus

Répondre

2

Vous devez ajuster votre attribut height ainsi que la viewBox:

<svg xmlns="http://www.w3.org/2000/svg"> 
    <svg width="200" height="150" viewBox="0 0 200 150"> 
     <defs> 
      <g id="circle"> 
       <circle r="100px" cx="0" cy="0" /> 
      </g> 
     </defs> 

     <use xlink:href="#circle" x="0" y="75"/> 
     <use xlink:href="#circle" transform="translate(200,75)"/> 
    </svg> 
</svg>​ 

http://jsfiddle.net/VJcwx/

+0

Je * savais * qu'il devait être quelque chose avec le 'viewBox', ah bien au moins j'étais proche :). Merci beaucoup! – Aerus

Questions connexes