La propriété CanvasRenderingContext2D.fillStyle de l'API Canvas 2D spécifie la couleur ou style à utiliser à l'intérieur des formes. La valeur par défaut est #000 (black).

Voir également le chapitre Ajout de styles et de couleurs dans le Tutoriel canvas.

Syntaxe

ctx.fillStyle = color;
ctx.fillStyle = gradient;
ctx.fillStyle = pattern;

Options

color
Une DOMString analysée comme valeur CSS <color>.
gradient
Un objet CanvasGradient (un gradient linéaire ou radial).
pattern
Un objet CanvasPattern (une image répétée).

Exemples

Utiliser la propriété fillStyle pour définir une couleur différente

Ceci est un simple snippet de code utilisant la propriété fillStyle pour définir une couleur différente.

HTML

<canvas id="canvas"></canvas>

JavaScript

var canvas = document.getElementById('canvas');
var ctx = canvas.getContext('2d');

ctx.fillStyle = 'blue';
ctx.fillRect(10, 10, 100, 100);

Éditez le code ci-dessous pour voir vos changements mettre à jour le canvas directement:

Un exemple fillStyle avec les boucles for

Dans cet exemple, nous allons utiliser deux boucles for pour dessiner une grille de rectangles, chacun avec une couleur différente. L'image qui en résulte devrait ressembler à la capture d'écran. Il n'y a rien de très extraordinaire ici, nous utilisons deux variables i et j pour générer une couleur RGB unique pour chaque carré, en modifiant uniquement les valeurs de rouge et vert; le canal bleu a une valeur fixe. En modifiant les canaux, vous pouvez générer toutes sorte de palettes. En augmentant le nombre, vous pouvez générer quelque chose de ressemblant aux palettes de couleurs utilisées par Photoshop.

var ctx = document.getElementById('canvas').getContext('2d');
for (var i = 0; i < 6; i++){
  for (var j = 0; j < 6; j++){
    ctx.fillStyle = 'rgb(' + Math.floor(255 - 42.5 * i) + ',' +
                     Math.floor(255 - 42.5 * j) + ',0)';
    ctx.fillRect(j * 25, i * 25, 25, 25);
  }
}

Le résultat devrait ressembler à ça:

ScreenshotLive sample

Spécifications

Specification Status Comment
HTML Living Standard
La définition de 'CanvasRenderingContext2D.fillStyle' dans cette spécification.
Standard évolutif  

Compatibilité des navigateurs

Update compatibility data on GitHub
OrdinateurMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariWebview AndroidChrome pour AndroidEdge MobileFirefox pour AndroidOpera pour AndroidSafari pour iOSSamsung Internet
Support simpleChrome Support complet OuiEdge Support complet 12Firefox Support complet OuiIE Support complet OuiOpera Support complet OuiSafari Support complet OuiWebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet OuiOpera Android Support complet OuiSafari iOS Support complet OuiSamsung Internet Android Support complet Oui

Légende

Support complet  
Support complet

  • Outre ctx.fillStyle, il existe dans les navigateurs basés sur WebKit et Blink une méthode non-standard et dépréciée, ctx.setFillColor().
    setFillColor(color, optional alpha);
    setFillColor(grayLevel, optional alpha);
    setFillColor(r, g, b, a);
    setFillColor(c, m, y, k, a);
    

Voir aussi

Étiquettes et contributeurs liés au document

Contributeurs à cette page : a-mt
Dernière mise à jour par : a-mt,