Optimiseur SVG en Ligne
Optimise et minifie tes fichiers SVG. Reduit la taille sans modifier l'apparence visuelle.
Ce que tu peux faire
Optimise tes SVG pour la production web
100% prive
Ton SVG est optimise dans ton navigateur. Jamais envoye a un serveur.
Jusqu'a 90% plus petit
Supprime le gonflement d'Illustrator, Inkscape et Figma. Il ne reste que l'essentiel.
Apparence preservee
Les optimisations sont sures : l'apparence visuelle ne change pas dans la grande majorite des cas.
Pret pour la production
Telecharge le SVG optimise et insere-le directement dans ton HTML ou ton CSS.
Comment ça marche
Trois étapes, sans complications
Charge ton fichier SVG
Glisse ou selectionne ton fichier .svg exporte depuis Illustrator, Inkscape, Figma ou n'importe quel autre editeur.
Optimisation automatique
Le SVG est nettoye et minifie : les metadonnees inutiles, les commentaires et les attributs redondants sont supprimes, et les paths sont optimises.
Telecharge le SVG optimise
Compare la taille avant et apres. Telecharge le SVG pret pour la production en un seul clic.
FAQ
Des questions ?
Dans la grande majorite des cas, non. Les optimisations securisees effectuees par l'outil (suppression des metadonnees, commentaires, elements masques, attributs redondants et simplification des paths sans perte de precision) n'affectent pas l'apparence visuelle. Cependant, un petit ensemble d'optimisations peut provoquer des modifications dans des cas particuliers : la reduction de la precision decimale dans les coordonnees peut legerement affecter la forme des paths tres detailles (bien que visuellement imperceptible dans la plupart des cas), et la suppression de certains attributs CSS peut affecter les SVG avec des styles complexes. Pour les SVG destines a etre utilises comme icones simples ou illustrations statiques, l'optimisation est totalement sure. Pour les SVG avec des animations CSS ou JavaScript qui dependent d'ID ou de classes specifiques, il est recommande de verifier le resultat avant de l'utiliser en production.
L'optimisation SVG supprime tout ce qui est inutile au rendu visuel. Dans la categorie des metadonnees inutiles : les declarations <?xml version='1.0'?> quand elles ne sont pas necessaires, les declarations DOCTYPE, les commentaires (sauf les commentaires de licence que certaines organisations exigent de conserver), les elements de metadonnees XML, et les espaces de noms d'Inkscape (inkscape:, sodipodi:), d'Adobe Illustrator (ai:, i:) et de CorelDRAW. Dans la categorie des attributs redondants : les attributs avec des valeurs par defaut (comme fill='black' quand black est deja la valeur par defaut), les attributs de style qui peuvent etre consolides dans l'attribut style ou dans le CSS. Dans la categorie geometrie : les paths avec des commandes redondantes (moveto suivi immediatement par un autre moveto), les sous-paths vides, et les transformations identite (transform='translate(0,0)'). L'optimisation des paths convertit les courbes de Bezier en formes plus courtes quand c'est possible et reduit la precision decimale des coordonnees.
Les economies varient enormement selon la source du SVG. Les SVG exportes depuis Adobe Illustrator sont notoirement volumineux : ils peuvent contenir des dizaines de kilooctets de metadonnees applicatives, des calques masques, des definitions inutilisees et des paths non optimises. Une icone simple exportee d'Illustrator a 50 Ko peut etre reduite a 3-5 Ko apres optimisation (reduction de plus de 90%). Les SVG de Figma sont plus propres mais ont encore de la marge : des reductions de 30-50% sont courantes. Les SVG d'Inkscape ont des metadonnees specifiques a l'application (espaces de noms sodipodi et inkscape) qui ajoutent du poids inutile pour la production : des reductions de 40-60% sont typiques. Pour des SVG deja optimises manuellement, les gains sont plus faibles (10-20%). En moyenne, SVGO signale une reduction mediane de 55-65% dans ses benchmarks avec des SVG de test du monde reel.
Absolument. Les SVG non optimises ont un impact direct sur les performances web. Un SVG de 80 Ko contre un SVG optimise de 8 Ko represente 10 fois moins de donnees que le navigateur doit telecharger, analyser et rendre. L'impact est particulierement notable sur les appareils mobiles avec des connexions lentes. Pour les icones SVG (les plus courantes sur le web), la taille optimale apres optimisation devrait etre inferieure a 1 Ko pour les icones simples et inferieure a 10 Ko pour les illustrations complexes. Au-dela de la reduction directe de taille, les SVG optimises se compriment mieux avec gzip ou Brotli (les algorithmes de compression HTTP), car les fichiers plus propres ont une entropie plus faible. Les outils d'audit de performance comme Lighthouse de Google penalisent les assets non optimises, dont les SVG surdimensionnes, dans leurs scores de Performance.
Oui, certaines optimisations agressives peuvent casser des SVG avec de l'interactivite. Les cas principaux sont : (1) Suppression des ID : si un SVG a des animations CSS ou JavaScript qui referentent des elements par leur ID (document.getElementById ou animation CSS avec des keyframes lies aux ID), supprimer ces ID cassera la fonctionnalite. (2) Suppression des classes : similaire au cas precedent avec les classes CSS. (3) Effondrement des groupes : fusionner des groupes <g> peut modifier l'ordre de rendu ou eliminer des points de reference pour les animations. (4) Inlinisation des styles : convertir les classes CSS en attributs de style inline peut interferer avec le CSS externe ciblant ces classes. Pour les SVG animes ou interactifs, il est recommande d'utiliser un profil d'optimisation conservateur qui preserve les ID et les classes, ou de verifier manuellement le resultat.
SVGO (SVG Optimizer) est l'outil d'optimisation SVG le plus utilise dans l'ecosysteme JavaScript/Node.js. Il a ete cree par Kir Belevich en 2012 et est disponible comme paquet npm (npm install -g svgo). SVGO utilise une architecture de plugins : chaque type d'optimisation est un plugin independant qui peut etre active ou desactive individuellement. Les plugins sont organises en deux categories : preset-default (plugins actives par defaut, consideres comme surs) et plugins optionnels (plus agressifs, desactives par defaut). SVGO v3 (publie en 2022) est la version actuelle, avec un support complet de SVG 2.0 et des optimisations ameliorees. L'outil s'integre dans les systemes de build les plus populaires : il existe svgo-loader pour webpack, @svgr/webpack pour React (qui utilise SVGO en interne), vite-plugin-svgo pour Vite, et des plugins pour Rollup et esbuild. En 2020, Jake Archibald a cree SVGOMG, une interface web pour SVGO qui permet de visualiser le resultat et d'ajuster les plugins de facon interactive.
Optimisation SVG : SVGO, paths, viewBox et performances web
Le format SVG (Scalable Vector Graphics) a ete developpe par le W3C et est devenu une recommandation officielle en 2001 avec SVG 1.0, bien que son adoption massive sur le web soit venue avec HTML5 et le support natif dans tous les principaux navigateurs vers 2012. SVG 1.1 (deuxieme edition, 2011) est la version la plus largement supportee actuellement. SVG 2.0 est en developpement actif au W3C avec un support partiel dans les navigateurs modernes. Le principal avantage de SVG sur les formats raster comme PNG ou JPG est son independance vis-a-vis de la resolution : un SVG de 1 Ko s'affiche parfaitement sur un ecran a 72 DPI, sur un iPhone Retina a 458 DPI, et sur un ecran 8K a 220 DPI, sans pixellisation. C'est particulierement important dans l'ecosysteme d'ecrans avec differentes densites de pixels (DPR, Device Pixel Ratio) qui dominent le marche depuis 2012. Les SVG generes par les outils de design contiennent des quantites significatives de donnees inutiles : Adobe Illustrator inclut son propre espace de noms XML (xmlns:ai), des donnees de session d'edition dans des elements <foreignObject>, des calques Illustrator sous forme de groupes avec des attributs proprietaires, et dans les anciennes versions, il incorporait meme des images raster de preview. Inkscape ajoute les espaces de noms inkscape: et sodipodi:, qui incluent des informations sur l'interface utilisateur de l'editeur (position de la vue, zoom, reperes) completement inutiles pour le rendu. Figma exporte des SVG plus propres mais inclut des elements de mise en page Figma et parfois des attributs data- personnalises.
L'optimisation des paths SVG est le type d'optimisation ayant le plus grand impact sur la taille des fichiers pour les SVG d'illustration. Le format de path SVG utilise un mini-langage avec des commandes comme M (moveto), L (lineto), C (curveto avec Bezier cubique), Q (curveto avec Bezier quadratique), A (arc), Z (closepath) et leurs variantes en coordonnees relatives (m, l, c, q, a, z). Les editeurs de design exportent les paths avec une precision excessive : des coordonnees avec 6-8 decimales (ex. : M 123.456789 234.567890) alors qu'en pratique 1-2 decimales suffisent pour une qualite visuellement indiscernable. Reduire la precision decimale de 6 a 1 peut reduire la taille du path de 60-70% sans changement visuel perceptible. La fusion des paths (quand plusieurs paths avec le meme style sont adjacents) et la simplification de Bezier (remplacement de courbes complexes par des approximations plus simples) sont d'autres techniques importantes. L'attribut viewBox est critique dans l'optimisation SVG : il definit le systeme de coordonnees interne du SVG et doit toujours etre preserve. Un SVG sans viewBox ne s'adapte pas correctement avec CSS. L'outil d'optimisation preserve toujours le viewBox intact. Il est aussi important de conserver les attributs xmlns: necessaires (principalement xmlns='http://www.w3.org/2000/svg') tout en supprimant les espaces de noms specifiques aux applications.
Dans le contexte du developpement web moderne, les SVG optimises ont trois usages principaux : les icones au format sprite, les illustrations inline en HTML, et les images de fond en CSS. Pour les icones, la pratique des sprites SVG (combiner plusieurs icones dans un seul fichier SVG avec des elements symbol references par use xlink:href) a ete popularisee par Chris Coyier sur CSS-Tricks vers 2012 et reste pertinente pour les systemes d'icones a grande echelle. Des frameworks comme Heroicons (Tailwind CSS), Feather Icons, Lucide React et Phosphor Icons distribuent leurs icones en SVG optimises avec des tailles inferieures a 1 Ko. Pour les illustrations inline, inserer SVG directement dans le HTML permet la manipulation avec CSS et JavaScript, les transitions de couleur avec les proprietes personnalisees CSS (variables CSS), et les animations avec CSS ou SMIL. Le choix entre utiliser SVG comme <img src='image.svg'>, comme <svg> inline, ou comme background-image en CSS a des implications de performance : SVG comme img est mis en cache par le navigateur mais ne peut pas etre manipule avec CSS ; SVG inline n'est pas mis en cache mais est completement manipulable. SVGO s'integre dans les bundlers modernes : Vite, via le plugin vite-plugin-svgr, peut importer des SVG comme composants React deja optimises avec SVGO au moment du build, eliminant le besoin d'optimisation manuelle dans le workflow de developpement.