Scalable Vector Graphics (SVG) est une spécification du W3C. SVG est un format basé sur XML permettant de décrire des ensembles graphiques vectoriels. Les coordonnées, dimensions et structures des objets vectoriels sont indiqués sous forme numérique dans le document XML. Un système spécifique de style (CSS) permet d'indiquer les couleurs et les polices d'écriture à utiliser.
Ce format gère quelques formes géométriques de base (rectangles, ellipses), mais aussi des chemins (paths), qui utilisent les courbes de Bézier et permettent ainsi d'obtenir n'importe quelle forme. Le remplissage peut se faire à l'aide de dégradés (en anglais gradients) de couleurs de motifs (pattern) qui sont des objets SVG quelconques, ou de filtres (appelés shaders en imagerie 3D). On peut également appliquer des motifs le long des chemins (markers), et utiliser les fonctions de remplissage. Le canal alpha, pour la transparence, est géré à tous les niveaux.
Comme dans tout document XML, les objets sont gérés sous forme de hiérarchie, et le format permet l'intégration d'animations, ou sa manipulation par programmation, notamment grâce à des scripts qui peuvent être intégrés dans le SVG.
Un des intérêts majeurs de SVG est qu'il peut être inclus dans d'autres documents XML, comme par exemple des documents xHTML ou des documents XML devant être traités par XSL-FO. Une image SVG peut également être manipulée par l'intermédiaire du modèle Document Object Model.
SVG peut être visualisé nativement avec certains navigateurs web, comme Mozilla (fonctionnalité en développement et non intégrée aux versions officielles), ou à l'aide d'un plug-in pour d'autres. Certaines interfaces graphiques l'utilisent pour la gestion et l'affichage d'icônes, et d'interface, comme X.org, GNOME, KDE ou certains téléphones portables.
source : wikipedia