SVG sont les initiales de Scalable Vector Graphic (graphique vectoriel adaptable).
Il s'agit d'un langage, respectant la norme XML, permettant de définir des graphiques vectoriels.
Pour comprendre cette définition, il faut déjà savoir ce qu'est un graphique vectoriel.
Image bitmap
Pour clarifier ce qu'est un graphique vectoriel et quel en est l'intérêt,
nous allons déjà rapidement comprendre la structure d'une image bitmap.
Les formats d'image classiques (jpeg, png par exemple) sont des formats bitmap.
Les photos prises avec un appareil photo actuel sont par exemple souvent au format jpeg.
Le principe de base de ces formats est le même que celui d'un écran :
on découpe la zone réservée à l'image en petits points (appelés pixels)
et chaque petit point est coloré. L'ensemble de ces points colorés forment une image.
On peut d'ailleurs reproduire une image avec ce principe,
même si l'on n'est pas doué en dessin : on quadrille avec une grille très fine
l'image originale, on reproduit cette grille sur une feuille vierge
et on colore ensuite chaque cellule de la grille de la couleur dominante
présente dans la cellule correspondante sur l'image initiale.
Comparaison d'un bitmap et d'un svg
L'image suivante est une image au format png, il s'agit donc d'une image bitmap :
L'image suivante est une image svg, il s'agit donc d'une image vectorielle :
En grossissant la page (appuyez sur ctrl +), vous voyez apparaître l'un des intérêts du svg : au fur et à mesure du grossissement, on commence à voir apparaître les pixels de l'image bitmap. Par contre l'image vectorielle n'a pas a priori d'effet de pixellisation.
En ouvrant une image bitmap dans un logiciel spécifique à l'image (par exemple le logiciel gimp), vous pourrez grossir l'image jusqu'à ne voir que des rangées de carrés colorés (les pixels).
Si l'image vectorielle ne subit pas cette dégradation, c'est parce qu'elle est recalculée au fur et à mesure du grossissement :
pour définir une image vectorielle,
on ne la définit pas en remplissant une grille point par point mais en définissant une figure géométrique.
En d'autres termes,
le cercle bitmap n'est qu'un ensemble de points colorés suivant
un contour de cercle. Lorsqu'on grossit l'image,
on grossit en fait chacun des carrés pixels,
il est donc naturel que l'on finisse par voir apparaître ces pixels.
Le cercle vectoriel est par contre défini par la donnée d'un ordre au logiciel
(ici le navigateur) : on lui demande de dessiner un cercle, ce cercle est redessiné au fur et à mesure du changement d'affichage.
Cette différence entre format bitmap et
format vectoriel est la raison essentielle pour laquelle le format vectoriel
est particulièrement adpaté aux cartes géographiques.
Vous trouverez par exemple de telles cartes ici.