HTML5 Canvas


L'élément <canvas> définit un conteneur pour des graphiques, tels que des diagrammes et des images. Vous devez utiliser des scripts (généralement JavaScript) pour dessiner des graphiques.

Dessinez un rectangle rouge, un rectangle dégradé, un rectangle coloré et du texte coloré sur le canvas.

Votre navigateur ne prend pas en charge l'élément HTML5 <canvas>.

Qu'est-ce que le canvas ?

L'élément HTML5 <canvas> est utilisé pour le dessin de graphiques, qui est réalisé au moyen de scripts (généralement JavaScript).

L'élément <canvas> n'est qu'un conteneur pour les graphiques, et vous devez utiliser des scripts pour dessiner des graphiques.

Vous pouvez utiliser canvas pour dessiner des tracés, des rectangles, des cercles, des caractères et ajouter des images de différentes manières.


Prise en charge des navigateurs

Le numéro de version du premier navigateur à prendre en charge l'élément <canvas> est représenté dans le tableau.

Élément
<canvas> 4.0 9.0 2.0 3.1 9.0

Création d'un Canvas (Canvas)

Dans une page web, un canvas est une zone rectangulaire définie par l'élément <canvas>.

Remarque :Par défaut, l'élément <canvas> n'a ni bordure ni contenu.

Exemple simple de l'élément <canvas> :

Remarque :L'élément <canvas> doit généralement spécifier un attribut id (souvent référencé dans le script), et les attributs width et height définissent la taille du canvas.

Astuce :Vous pouvez utiliser plusieurs éléments <canvas> dans une page HTML.

Utilisez l'attribut style pour ajouter une bordure :

Exemple

<canvas id="myCanvas" width="200" height="100" style="border:1px solid #000000;"> </canvas>

Essayez-le »


Utilisation de JavaScript pour dessiner des images

L'élément <canvas> lui-même ne dispose pas de capacités de dessin. Tout le travail de dessin doit être effectué en interne en JavaScript :

Exemple

var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); ctx.fillStyle="#FF0000"; ctx.fillRect(0,0,150,75);

Exemple

Explication de l'exemple :

Tout d'abord, trouvez l'élément <canvas> :

var c=document.getElementById("myCanvas");

Ensuite, créez un objet de contexte :

var ctx=c.getContext("2d");

L'objet getContext("2d") est un objet HTML5 intégré qui possède plusieurs méthodes pour dessiner des chemins, des rectangles, des cercles, des caractères et ajouter des images.

Les deux lignes de code suivantes dessinent un rectangle rouge :

ctx.fillStyle="#FF0000";
ctx.fillRect(0,0,150,75);

La propriété fillStyle peut être des couleurs CSS, des dégradés ou des motifs. La valeur par défaut de fillStyle est #000000 (noir).

La méthode fillRect(x,y,width,height) définit le mode de remplissage actuel pour le rectangle actuel.


Coordonnées du canvas

Le canvas est une grille bidimensionnelle.

La coordonnée en haut à gauche du canvas est (0,0).

La méthode fillRect avec les paramètres (0,0,150,75) signifie : dessiner un rectangle de 150x75 sur le canvas, à partir du coin supérieur gauche (0,0).

L'exemple de coordonnées :

Comme le montre la figure ci-dessous, les coordonnées X et Y du canvas servent à positionner le dessin sur le canvas. Le cadre rectangulaire tracé à la souris affiche les coordonnées de positionnement.

Canvas - Chemins

X
Y

Canvas - Chemins

) Définir la coordonnée de départ de la ligne

  • moveTo(x,y) Définir la coordonnée de fin de la ligne
  • lineTo(x,yPour dessiner des lignes, nous devons utiliser la méthode « encre », comme stroke().

Exemple

Exemple

Votre navigateur ne prend pas en charge l'élément HTML5 <canvas>.

Essayez-le »

JavaScript :

var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); ctx.moveTo(0,0); ctx.lineTo(200,100); ctx.stroke();

Pour dessiner un cercle dans le canvas, nous utiliserons les méthodes suivantes :

En fait, lorsqu'on dessine un cercle, on utilise la méthode « encre », comme stroke() ou fill().

arc(x,y,r,start,stop)

Exemple

Exemple

Votre navigateur ne prend pas en charge l'élément HTML5 <canvas>.

Essayez-le »

JavaScript :

var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); ctx.beginPath(); ctx.arc(95,50,40,0,2*Math.PI); ctx.stroke();

Canvas - Texte


Canvas - Texte

font - Définir la police

  • ) - Dessiner du texte plein sur le canvas
  • fillText(text,x,y) - Dessiner du texte creux sur le canvas
  • strokeText(text,x,yUtilisez fillText() :

Exemple

Exemple

Votre navigateur ne prend pas en charge l'élément HTML5 <canvas>.

Essayez-le »

JavaScript :

var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); ctx.font="30px Arial"; ctx.fillText("Hello World",10,50);

Utilisez strokeText() :

Exemple

Exemple

Votre navigateur ne prend pas en charge l'élément HTML5 <canvas>.

Essayez-le »

JavaScript :

var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); ctx.font="30px Arial"; ctx.strokeText("Hello World",10,50);

Canvas - Dégradés


Canvas - Dégradés

Il existe deux façons différentes de configurer le dégradé Canvas :

) - Créer un dégradé linéaire

  • createLinearGradient(x,y,x1,y1) - Créer un dégradé radial/circulaire
  • createRadialGradient(x,y,r,x1,y1,r1Lorsque vous utilisez un objet de dégradé, vous devez utiliser au moins deux couleurs d'arrêt.

La méthode addColorStop() spécifie l'arrêt de couleur, et les paramètres utilisent des coordonnées pour le décrire, qui peuvent être comprises entre 0 et 1.

Utilisez un dégradé, définissez la valeur de fillStyle ou strokeStyle sur le dégradé, puis dessinez des formes telles que des rectangles, des textes ou des lignes.

Utilisez createLinearGradient() :

Exemple

Exemple

Votre navigateur ne prend pas en charge l'élément HTML5 <canvas>.

Créer le dégradé

JavaScript :

var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); //Remplir le dégradé var grd=ctx.createLinearGradient(0,0,200,0); grd.addColorStop(0,"red"); grd.addColorStop(1,"white"); //Essayez-le » ctx.fillStyle=grd; ctx.fillRect(10,10,150,80);

Utilisez createRadialGradient() :

Exemple

Exemple

Votre navigateur ne prend pas en charge l'élément HTML5 <canvas>.

Créer le dégradé

JavaScript :

var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); //Remplir le dégradé var grd=ctx.createRadialGradient(75,50,5,90,60,100); grd.addColorStop(0,"red"); grd.addColorStop(1,"white"); //Essayez-le » ctx.fillStyle=grd; ctx.fillRect(10,10,150,80);

Canvas - Images


Canvas - Images

Utilisation des images :

  • drawImage(image,x,y)

Utilisation des images :

The Scream

Manuel de référence pour HTML Canvas

Votre navigateur ne prend pas en charge l'élément HTML5 <canvas>.

Essayez-le »

JavaScript :

var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); var img=document.getElementById("scream"); ctx.drawImage(img,10,10);

Manuel de référence HTML Canvas


Balise HTML <canvas>

Manuel de référence pour HTML CanvasBalise HTML <canvas>

Canvas vers image

Balise L'élément HTML5 <canvas> utilise JavaScript pour dessiner des images sur une page web.
<canvas> Pour plus d'informations, consultez :

Apprendre HTML5 Canvas, cet article suffit.Autres extensions

Réflexion de l'IA en cours...