Graphiques vectoriels dans Android

Je travaille sur une application qui affiche la base de données d'autres personnes sur d'autres personnes. Les images qu'ils possèdent sont toutes des graphiques vectoriels et peuvent être converties en n'importe quel format, mais les garder dans un format vectoriel est bon car les utilisateurs voudront probablement faire un zoom de façon étroite.

La question est: est-ce qu'il existe une manière intégrée d'afficher un graphique vectoriel dans Android? Le format n'a pas d'importance – nous pouvons nous convertir. Le format actuel que nous considérons est PDF, mais étant donné qu'il n'y a pas de support PDF natif, je devrais faire quelque chose de très complexe pour le faire fonctionner (par exemple, intégrer poppler dans mon application via NDK). L'alternative est simplement de convertir les graphiques vectoriels en un format plus simple (JPG, GIF), mais je préfère éviter cela.

  • Affichage des fichiers SVG dans Android
  • Changer la couleur de remplissage sur un actif vectoriel dans Android Studio
  • Les dessins vectoriels qui sont automatiquement convertis en pngs
  • Contrôle précis des animations Androids VectorDrawable
  • Android Studio Vector Asset Import Error - Tags non pris en charge
  • Rendu SVG avec OpenGL (et OpenGL ES)
  • Vector Asset Studio importe des fichiers colorés .svg en noir et blanc
  • Densités générées disparues
  • 5 Solutions collect form web for “Graphiques vectoriels dans Android”

    Vérifiez svg-android – c'est une bibliothèque relativement nouvelle et ne prend en charge que SVG Basic, mais c'est la bibliothèque utilisée pour dessiner Androidify. Il existe des exemples sur la page d'accueil sur la façon d'obtenir un Drawable à partir d'un SVG que sems pour être ce que vous recherchez.

    Création de dessins vectoriels.


    Je sais que cette question est ancienne, mais j'ai rencontré cette même exigence et je suis heureux d'apprendre que Android 5.0 prend en charge les modèles vectoriels maintenant. Vous pouvez utiliser les balises <vector> et les données de chemin pour créer des jeux vectoriels et cela fonctionne comme un charme sur API-21. Voici un exemple qui produit une image vectorielle en forme de coeur.

     <!-- res/drawable/heart.xml --> <vector xmlns:android="http://schemas.android.com/apk/res/android" android:height="256dp" android:width="256dp" android:viewportWidth="32" android:viewportHeight="32"> <!-- draw a path --> <path android:fillColor="#8fff" android:pathData="M20.5,9.5 c-1.955,0,-3.83,1.268,-4.5,3 c-0.67,-1.732,-2.547,-3,-4.5,-3 C8.957,9.5,7,11.432,7,14 c0,3.53,3.793,6.257,9,11.5 c5.207,-5.242,9,-7.97,9,-11.5 C25,11.432,23.043,9.5,20.5,9.5z" /> </vector> 

    Le seul problème auquel j'ai été confronté jusqu'à présent est qu'il n'est pas inclus dans les libs de support, et vous ne pouvez donc pas les utiliser dans des API inférieures. La chose merveilleuse est que, vous pouvez même animer des jeux vectoriels maintenant. Voici un exemple.

     <!-- res/drawable/vectordrawable.xml --> <vector xmlns:android="http://schemas.android.com/apk/res/android" android:height="64dp" android:width="64dp" android:viewportHeight="600" android:viewportWidth="600"> <group android:name="rotationGroup" android:pivotX="300.0" android:pivotY="300.0" android:rotation="45.0" > <path android:name="v" android:fillColor="#000000" android:pathData="M300,70 l 0,-70 70,70 0,0 -70,70z" /> </group> </vector> 

    En savoir plus sur l'animation dessinable vectoriel ici .

    TinyLive SVG fournit une visionneuse SVG pour Android. Je ne l'ai pas essayé, alors je n'ai aucune idée si c'est bon ou pas.

    En lisant cette demande de bogue, il semble que SVG puisse être activé dans le navigateur – et aussi probablement WebView aussi – dans Gingerbread. Mais étant donné que c'est une fonctionnalité possible dans la version future, il ne vous est probablement pas très utile.

    Regardez le BetterVectorDrawable lib avec le SVG vers VectorDrawable Converter .

    BetterVectorDrawable est l'implémentation de VectorDrawable pour Android 4.0+ avec un comportement de repli configurable sur Android 5.0+.

    SVG to VectorDrawable Converter est le convertisseur de lots d'images SVG vers les fichiers de ressources Android VectorDrawable XML. La version en ligne est ici .

    Les liens indiquent les lectures, qui fournissent suffisamment d'informations sur l'utilisation de la lib et du convertisseur.

    Une auto-prise sans vergogne, mais peut-être vous seriez-vous intéressé par ribbon-vg ? C'est basique, Java pur et rapide; En s'appuyant sur des techniques de pointe pour décharger la CPU dans le processus de rendu.

    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.