Sujets sur : iPhone

Améliorer les performances Flash sous iPhone / Android avec Convert Text to Bitmap

Commentaires fermés sur Améliorer les performances Flash sous iPhone / Android avec Convert Text to Bitmap

Ecrit le 11 mai par Matthieu
Publié dans le(s) sujet(s) Android |iPhone

Et on continue dans la série de tutoriels consacrés au développement flash pour les iPhone, Android avec Adobe AIR.

Ce cours ActionScript est axé sur l’amélioration des performances des applications flash iPhone, Android.

C’est un fait, l’utilisation de textes dynamiques (les fameux TextField) dégrade les performances sur smartphones !

Il est donc important de trouver une alternative au TextField. Le texte est pratique pour afficher un score dans un jeux flash par exemple.

Et voici une classe qui permet de convertir automatiquement un TextField en images Bitmap.

Et ainsi, booster les performances de vos jeux flash pour iPhone et Android !

Text Bitmap

La version TextField et la version Bitmap sont quasiment identiques. Aucune différence à l’oeil nu sur un smartphone.

Il est possible de choisir l’alignement du texte : gauche, droite et centré.

L’affichage de textes multilignes n’est pas encore possible.

Cette classe prend en charge uniquement l’affichage de ligne simple.

Utilisation de BitmapText

Voici le constructeur de la classe BitmapText.

[codesyntax lang= »actionscript3″ title= »BitmapText.as » bookmarkname= »BitmapText.as »]

[/codesyntax]

Voici le détail des paramètres du constructeur :

  • thisField : l’instance de votre TextField que vous voulez afficher avec le texte, les filtres, le format de la police…
  • thisAlphabet : un objet qui contient les lettres au format Bitmap déjà créées. Sinon BitmapText s’occupe de créer les lettres Bitmap si le paramètre est null.
  • thisCharList : la liste des caractères à utiliser pour les lettres Bitmap. Si paramètre null, BitmapText contient par défaut une liste de caractères.
  • thisProps : un objet qui permet d’initialiser automatiquement les propriétés de la classe.

Et voici un exemple d’utilisation de la classe BitmapText :

[codesyntax lang= »actionscript3″ title= »BitmapText.as » bookmarkname= »BitmapText.as »]

[/codesyntax]

La classe BitmapText effectue une copie de votre TextField existant et l’enlève de la display list.

Pour mettre à jour le texte, vous pouvez utiliser simplement :

[codesyntax lang= »actionscript3″ title= »BitmapText.as » bookmarkname= »BitmapText.as »]

[/codesyntax]

Il y a également plusieurs getter / setter pour personnaliser la classe BitmapText :

  • margin : spécifie l’espace entre les caractères.
  • edge_buffer : spécifie un espace (ou marge) intérieur autour des lettres. C’est pour prendre en compte les filtres autour de chaque caractère.

Exemple Bitmap Text

Et voici un exemple d’affichage qui montre :

  • en haut le TextField classique.
  • en dessous le Bitmap Text.

Télécharger le code source

Vous pouvez télécharger le code source de l’exemple utilisé.

Télécharger “Bitmap Fonts Auto iPhone Android”

ex-bitmap-fonts-auto-iphone.zip – Téléchargé 877 fois – 103,01 Ko

Consulter l’article original sur Flash on iPhone – Automatically convert dynamic text to high performance bitmaps (with filters)

Il existe également cette solution plus souple à utiliser, avec des filtres supplémentaires : Bitmap Font Renderer.

Pour des performances encore plus élevées, il est préférable d’utiliser les polices Bitmap avec stage3d et Starling Framework.

Quelles solutions utilisez-vous pour améliorer les performances Flash sur iPhone, Android ?

Partagez vos astuces dans les commentaires ci-dessous.