L'esprit d'un moteur de navigateur, appliqué au SVG dans Flutter.

Denis a créé et maintient full_svg_flutter, un runtime de rendu autonome pour les équipes qui ont besoin que leurs assets SVG existants restent des SVG dans Flutter.

1.4.2version actuelle
140pub points
12versions publiques
MITlicence open source

L'asset fonctionne dans le navigateur. Dans Flutter, l'animation disparaît.

Beaucoup de pipelines comblent cet écart en convertissant l'asset en Lottie, Rive, GIF, WebP ou en code d'animation Flutter écrit à la main. Ce sont parfois de bons outils – mais la conversion est le mauvais prix à payer quand le SVG est déjà la source de vérité.

Un seul moteur, qui préserve le DOM, pour le SVG statique et animé

Le package analyse le modèle de document, le CSS, le timing, les filtres, le texte et l'état d'interaction, puis dessine dans Flutter. Les exports SVGator pilotés par JavaScript s'exécutent dans un moteur QuickJS embarqué ; les SVG sans script ne paient aucun coût de démarrage JavaScript.

Ce que couvre le runtime

  • Géométrie statique, dégradés, motifs, clipping et masques
  • Animations SMIL et CSS @keyframes
  • Path morphing, motion paths et contrôle de la lecture
  • Les 17 primitives de filtre SVG
  • Texte riche, textPath, bidi/RTL et métadonnées d'accessibilité
  • JavaScript inline et exports SVGator
  • Migration compatible avec l'API statique de flutter_svg
  • Android, iOS, macOS, Windows et Linux
Animated Flutter logo built from one SVG file

Un seul fichier SVG. Ici, l'animation native du navigateur ; dans le package, le rendu natif Flutter.

Cette page affiche l'asset SVG animé du projet dans le navigateur. Dans une application Flutter, full_svg_flutter rend exactement le même fichier source dans Flutter, sans WebView ni étape de conversion.

Un chemin de migration pragmatique

Les usages statiques existants de SvgPicture migrent souvent avec un simple changement d'import. FSvgPicture détecte automatiquement les marqueurs d'animation, et AnimatedSvgController ajoute pause, seek, vitesse, direction et changement de vue SVG quand le produit en a besoin.

La documentation de runtimes nés de vrais cas limites.

v1.4.2

full_svg_flutter

Garder le SVG comme format source dans Flutter.

v0.1.0

woff2

Charger des conteneurs de polices web via le FontLoader de Flutter.

v0.1.3

quickjs_engine

Le même moteur JavaScript moderne sur chaque plateforme Flutter.

Le problème : dans Flutter, la prise en charge du SVG est généralement statique

Une explication concrète de l'écart de rendu, des contournements courants, du contrôle de la lecture, des compromis de performance – et des cas où garder le SVG en SVG est le bon choix.

Lire l'analyse technique (s'ouvre dans un nouvel onglet)

Un produit numérique à construire, moderniser ou débloquer ?

Décrivez le vrai problème – web, mobile, organisation de l'équipe ou workflow IA qui doit devenir fiable en production.

Parler d'un projet