getTextWidth, getTextHeight

Définition Utilisation Exemple Côté technique
 

largeur=getTextWidth(chaine);
Retourne la largeur de l'écriture de la chaîne passée
Paramètres passés:
chaine: String dont on veut connaître l'espace occupé par son écriture
Valeur retournée:
Largeur de l'écriture de la chaine passée

 

hauteur=getTextHeight(chaine);
Retourne la hauteur de l'écriture de la chaîne passée
Paramètres passés:
chaine: String dont on veut connaître l'espace occupé par son écriture
Valeur retournée:
Hauteur de l'écriture de la chaine passée

 

Si l'on veut pouvoir center une phrase, on a besoin de connaître l'encombrement de son écriture. Ces deux fonctions nous donnent la largeur et la hauteur.

Comme la taille de l'écriture dépend des attributs (taille, gras, italique,empattements), il faut choisir ces attributs avant l'appel à la fonction.

La hauteur est presque indépendante des caractères. Elle vaut: 8*textSize() + textBold() + 1 pour les lettres "gjpqyçµ", 7*textSize + textBold + 1 pour "&,;_" et 6*textSize+textBold + 1 pour toutes les autres lettres et les autres symboles. Par choix, la fonction retourne la plus grande de ces 3 valeurs.

 

Exemples d'utilisation:
setTextCursor(DEMI_LARGEUR-getTextWidth(chaine)/2,DEMI_HAUTEUR-getTextHeight(chaine)/2); text(chaine); Centre chaine au milieu de l'écran

while (getTextWidth(chaine)>100) setTextSize(getTextSize()-1); Diminue la taille de la police pour que chaine tienne dans les 100 pixels.

 

Voir aussi:
- Fonte vectorielle Définition de la fonte utilisée
- text(); Écrit du texte
- MAX_X, MAX_Y...: Valeurs des coordonnés graphiques
- setTextColor(); Couleur du texte
- setTextSize(); Taille des caractères
- setTextBold(); Gras ou normal
- setTextItalic(); Italique ou normal
- setTextSerif(); Avec ou sans empattement
- setTextOrient(); Direction d'écriture des textes
- setTextKeep(); Choisit l'action si le texte déborde
- setTextCursor(); Coordonnés le point-curseur