01 · Flutter package
full_svg_flutter
Mantén el SVG como formato fuente dentro de Flutter.
Por qué existe
Los iconos estáticos son solo una pequeña parte del SVG. Los assets de producto pueden depender de SMIL, animación CSS, morphing, filtros, texto o un reproductor JavaScript inline. Convertirlos añade una segunda fuente de verdad; un WebView añade un segundo sistema de renderizado.
Instalación
flutter pub add full_svg_flutterInicio rápido
import 'package:full_svg_flutter/full_svg_flutter.dart';
// Static or animated — the runtime detects the document.
FSvgPicture.asset(
'assets/hero.svg',
width: 240,
semanticsLabel: 'Product illustration',
);
// Existing static flutter_svg usage can keep the familiar API.
SvgPicture.asset('assets/icon.svg');Cobertura
- Static SVG and DOM-preserving rendering
- SMIL and CSS @keyframes animation
- Path morphing and motion paths
- All 17 SVG filter primitives
- Masks, clipping, gradients, patterns, and rich text
- Inline JavaScript and SVGator exports
- Playback control and SVG <view> navigation
- flutter_svg-compatible static API
Cómo funciona
El paquete analiza el documento SVG en su propio modelo, que conserva el DOM, evalúa el estilo y el estado de la animación y después pinta a través de Flutter. El contenido estático y el animado comparten el mismo motor. JavaScript solo se inicia cuando hay un elemento script, y no antes.
Úsalo cuando
- Recibes SVG animados o assets de SVGator y no puedes cambiar el formato de origen.
- Necesitas fidelidad en filtros, máscaras, texto o animación más allá del renderizado de iconos estáticos.
- Quieres una API al estilo de flutter_svg y una ruta de migración sin WebView.
Mapa de la API
FSvgPicture- Widget principal para assets estáticos o animados desde asset, red, string, archivo o bytes.
SvgPicture- Punto de entrada estático compatible con flutter_svg.
AnimatedSvgController- Reproduce, pausa, hace seek, cambia la velocidad o la dirección y alterna vistas SVG.
renderSvgToPicture- Graba un SVG en un Picture para pintado personalizado o rasterización.
svg.cache- Caché configurable de fuentes decodificadas, compartida entre widgets.
Antes de publicar
- Es un runtime SVG, no un DOM de navegador completo; foreignObject y los frameworks que dependen del navegador quedan fuera del alcance.
- Valida visualmente los assets con filtros complejos y texto de dirección mixta antes de la release.