setTextColor()

Impose la couleur pour les prochains affichages de texte

 

Exemples d'utilisation

setTextColor(RED); // RED s'applique à partir de maintenant
setTextColor(RED); text("Rouge "); // Le mot rouge s'affiche en rouge!
text("Rouge "); setTextColor(RED); // Le mot rouge s'affiche encore de la couleur d'avant
setTextColor(RGBcolor(0,RANDOM_RED),0); text("Rouge "); // Le mot rouge s'affiche en un rouge quelconque

 

Référence

void setTextColor(word couleur);

Paramètre passé

couleur: composé couleur 16 bits, voir RGBcolor()

Valeur retournée

Aucune

 

Voir aussi

- couleur=getTextColor(); Retourne la couleur du prochain texte
- textColor Couleur du prochain texte
- setDrawColor(); Couleur du dessin
- MAX_RED... Valeur maximum d'une composante couleur
- BLACK, WHITE, ... Constantes couleurs
- setDrawInverse(); Choix du mode dessin ou inversion
- RGBcolor(); Transforme un triplet RGB en un code couleur
- clrscr(); Efface l'écran

 

Notes

A l'initialisation, la couleur des caractères est blanche. L'effacement d'écran d'une couleur quelconque impose la couleur opposée pour la couleur des textes. Cela permet d'avoir des caractères blancs si le fond est noir ou l'inverse.

Les caractères sont sur fond transparent. Pour avoir un fond, il faut le dessiner avant par exemple avec la fonction fillRect().

 

Exemple

PecheuxGraph_ILI9341_8bits.zip\PecheuxGraph_ILI9341_8bits\examples\Documentation\Exemple-107-setTextColor\Exemple-107-setTextColor.ino (dans votre fichier téléchargé):

// Ce programme montre comment faire varier la couleur des caractères écrits.
// Pour avoir des caractères sur fond coloré, on utilise fillRect().

#include <PecheuxGraph_ILI9341_8bits.h>

void setup() 
{
  setGraphMode(PAYSAGE);

  // mot en rouge
  setTextColor(RED); // RED s'applique à partir de maintenant
  text("Rouge ");

  // mots bleu et vert
  setTextColor(0x001F); text("Bleu "); // On peut aussi définir la couleur par un nombre...
  setTextColor(RGBcolor(0,MAX_GREEN,0)); text("Vert\n"); // ou avec la fonction RGBcolor
  
  fillRect(0,17,65,30,CYAN); // Donnera le fond du mot (à positionner!)
  setTextColor(BLACK); text("Inversé");
}

void loop()
{
}

Résultat:

 

Côté technique

C'est parce que les textes sont dessinés par des droites et des arcs qu'ils sont transparents.

Pour dessiner du texte, comme on appelle les procédures de dessin, on doit donc sauvegarder provisoirement la couleur des dessins.

 

drawColor()   <<     >>   getTextColor()