Guide de débutant pour SVG (Graphiques Vectoriels Évolutifs) dans HTML

Salut à toi, futur(e) développeur(euse) web ! Aujourd'hui, nous allons entreprendre un voyage passionnant dans le monde du SVG dans HTML. Ne t'inquiète pas si c'est ta première fois – je serai ton guide amical, et nous explorerons ce sujet pas à pas. Alors, prends une tasse de café, et c'est parti !

HTML - SVG

Qu'est-ce que le SVG ?

SVG signifie Graphiques Vectoriels Évolutifs. Je sais que cela peut sembler un peu technique, mais laisse-moi te l'expliquer de manière simple.

Imaginons que tu dessines une image. Lorsque tu utilises un format d'image standard comme JPEG ou PNG, c'est comme dessiner avec des crayons de cire. L'image a l'air bien, mais si tu essaies de la rendre plus grande, elle commence à devenir floue. C'est parce que ces images sont composées de tinyes points appelés pixels.

Le SVG, en revanche, c'est comme dessiner avec des crayons magiques. Quelle que soit la taille de ton image, elle reste toujours nette et claire. C'est parce que le SVG utilise des formules mathématiques pour créer des formes et des lignes, plutôt que des pixels.

Ce qui rend le SVG spécial

Voyons un peu plus en détail ce qui rend le SVG si particulier :

  1. Évolutivité : Comme son nom l'indique, les images SVG peuvent être redimensionnées à n'importe quelle taille sans perte de qualité. Que tu les visualises sur un tout petit smartphone ou sur une immense affiche publicitaire, elles seront toujours nettes.

  2. Petit taille de fichier : Comme le SVG utilise des formules mathématiques au lieu de pixels, les tailles de fichiers sont souvent beaucoup plus petites que celles des formats d'image traditionnels.

  3. Éditable : Tu peux éditer des images SVG avec du code, ce qui signifie que tu peux changer les couleurs, les formes et les tailles sans avoir besoin de logiciels de retouche d'image.

  4. Accessibilité : Les images SVG peuvent inclure du texte lisible par les lecteurs d'écran, rendant ton site web plus accessible aux personnes ayant des handicaps visuels.

Comment utiliser le SVG dans HTML

Maintenant que nous savons ce qu'est le SVG, voyons comment nous pouvons l'utiliser dans notre HTML. Il y a plusieurs façons de le faire :

  1. SVG inline : Cela signifie placer le code SVG directement dans ton fichier HTML.
<svg width="100" height="100">
<circle cx="50" cy="50" r="40" stroke="green" stroke-width="4" fill="yellow" />
</svg>
  1. Utiliser la balise <img> : Tu peux utiliser le SVG comme n'importe quelle autre image.
<img src="circle.svg" alt="Un cercle jaune avec un contour vert">
  1. Utiliser l'attribut background-image en CSS : Tu peux définir un SVG comme image de fond dans le CSS.
<div style="background-image: url('circle.svg');"></div>
  1. Utiliser la balise <object> : Cela te permet d'inclure des fichiers SVG externes.
<object data="circle.svg" type="image/svg+xml"></object>

Balises à l'intérieur de l'élément SVG

Le SVG a son propre ensemble de balises que tu peux utiliser pour créer diverses formes et designs. Voici quelques-unes des plus courantes :

Balise Description
<circle> Crée un cercle
<rect> Crée un rectangle
<line> Crée une ligne
<path> Crée des formes complexes
<text> Ajoute du texte au SVG
<g> Groupe les éléments SVG ensemble

Voyons un exemple en utilisant quelques-unes de ces balises :

<svg width="200" height="200">
<rect x="0" y="0" width="100" height="100" fill="red" />
<circle cx="150" cy="50" r="40" fill="blue" />
<line x1="0" y1="150" x2="200" y2="150" stroke="green" stroke-width="4" />
<text x="10" y="180" fill="purple">Bonjour, SVG !</text>
</svg>

Dans cet exemple, nous avons créé un carré rouge, un cercle bleu, une ligne verte et du texte violet, tous à l'intérieur d'un canevas SVG de 200x200 pixels.

Attributs des éléments SVG

Les éléments SVG ont divers attributs qui contrôlent leur apparence et leur comportement. Voici quelques-uns des plus courants :

Attribut Description
width et height Définissent les dimensions du SVG
fill Définit la couleur à l'intérieur d'une forme
stroke Définit la couleur du contour de la forme
stroke-width Définit l'épaisseur du contour de la forme
x et y Définissent la position d'un élément
cx et cy Définissent le point central d'un cercle
r Définit le rayon d'un cercle

Exemples d'éléments SVG HTML

Mettons tout cela ensemble avec quelques exemples plus complexes :

  1. Un visage souriant :
<svg width="200" height="200">
<circle cx="100" cy="100" r="90" fill="yellow" />
<circle cx="70" cy="80" r="20" fill="black" />
<circle cx="130" cy="80" r="20" fill="black" />
<path d="M 50 140 Q 100 180 150 140" stroke="black" stroke-width="5" fill="none" />
</svg>

Cela crée un cercle jaune pour le visage, deux cercles noirs pour les yeux, et une ligne courbe pour le sourire.

  1. Une maison simple :
<svg width="200" height="200">
<rect x="50" y="100" width="100" height="80" fill="lightblue" />
<polygon points="50,100 100,50 150,100" fill="red" />
<rect x="80" y="130" width="40" height="50" fill="brown" />
</svg>

Cela crée un rectangle bleu clair pour la maison, un triangle rouge pour le toit, et un rectangle brun pour la porte.

Souviens-toi, la clé pour maîtriser le SVG est la pratique. Essaye de modifier ces exemples, change les couleurs, les tailles et les positions. Expérimente avec différentes formes et vois ce que tu peux créer !

En conclusion, le SVG est un outil puissant pour créer des graphiques évolutifs et efficaces sur le web. Alors que tu continues ton parcours dans le développement web, tu découvriras que le SVG ouvre de nombreuses possibilités pour créer des designs engageants, interactifs et réactifs. Continue à pratiquer, et bientôt tu seras capable de créer des graphiques SVG incroyables de ton propre chef !

Credits: Image by storyset