Flutter SVG rendering
4 réponses
Flutter ne supporte pas actuellement SVG. Suivez problème de 1831 pour les mises à jour.
si vous avez absolument besoin d'un dessin vectoriel, vous pouvez voir le flutter logo widget comme exemple pour dessiner en utilisant le Canvas
API, ou rastérize votre image sur le côté natif et le passer à Flutter comme un bitmap, mais pour l'instant votre meilleur pari est probablement d'intégrer des images d'actifs rastérizées à haute résolution.
le travail autour pour le moment est d'utiliser des polices
fonts:
- family: icomoon
fonts:
- asset: assets/fonts/icomoon.ttf
static const IconData TabBarHome= const IconData(0xe906, fontFamily: 'icomoon');
static const IconData TabBarExplore= const IconData(0xe902, fontFamily: 'icomoon');
Remplacer le ### eg (906)
Flutter a fait une nouvelle lib flutter_svg: ^0.5.0` pour gérer les fichiers svg. Nous pouvons l'utiliser comme
new SvgPicture.asset(
'assets/images/candle.svg',
height: 20.0,
width: 20.0,
allowDrawingOutsideViewBox: true,
),
Polices sont une excellente option pour beaucoup de cas.
j'ai travaillé sur une bibliothèque pour rendre les SVG sur une toile, disponible ici: https://github.com/dnfield/flutter_svg
L'API de plein droit maintenant ressemblerait à quelque chose comme
new SvgPicture.asset('asset_name.svg')
pour rendre asset_name.svg (dimensionné à son parent, par exemple un SizedBox
). Vous pouvez également spécifier un color
et blendMode
pour avoir teinté l'atout..
il est maintenant disponible sur pub et fonctionne avec un minimum de Flutter version 0.3.6. Il s'occupe d'un tas de cas mais pas de tout - consultez le GitHub repo pour les mises à jour et pour classer les problèmes.
L'original GitHub question référencé par Colin Jackson est vraiment pas destiné à être principalement axé sur les SVG en Flottement. J'ai ouvert un autre problème ici: https://github.com/flutter/flutter/issues/15501