Canvas HTML5

L'elemento canvas viene utilizzato per disegnare grafici sul web.

Cos'è Canvas?

L'elemento canvas di HTML5 utilizza JavaScript per disegnare immagini sul web.

La galleria è un'area rettangolare, ogni pixel della quale può essere controllato.

Canvas ha molti metodi di disegno di percorso, rettangolo, cerchio, caratteri e aggiunta di immagini.

Creare l'elemento Canvas

Aggiungere l'elemento canvas alla pagina HTML5.

Definire l'id dell'elemento, la larghezza e l'altezza:

<canvas id="myCanvas" width="200" height="100"></canvas>

Disegno tramite JavaScript

L'elemento canvas in sé non ha la capacità di disegno. Tutta la lavorazione di disegno deve essere completata internamente con JavaScript:

<script type="text/javascript">
var c=document.getElementById("myCanvas");
var cxt=c.getContext("2d");
cxt.fillStyle="#FF0000";
cxt.fillRect(0,0,150,75);
</script>

JavaScript utilizza l'id per trovare l'elemento canvas:

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

Poi, crea l'oggetto context:

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

L'oggetto getContext("2d") è un oggetto HTML5 integrato che offre vari metodi per disegnare percorsi, rettangoli, cerchi, testi e aggiungere immagini.

Le due righe di codice seguenti disegnano un rettangolo rosso:

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

Il metodo fillStyle lo rende rosso, il metodo fillRect specifica la forma, la posizione e le dimensioni.

Comprendere le coordinate

Il metodo fillRect sopra ha i parametri (0,0,150,75).

Questo significa: disegna un rettangolo di 150x75 sul canvas, partendo dall'angolo in alto a sinistra (0,0).

Come illustrato di seguito, le coordinate X e Y del canvas vengono utilizzate per posizionare i disegni sul canvas.

Esempio di Canvas: Comprensione delle coordinate

Esempio: posizionare il mouse sopra il rettangolo per vedere le coordinate

Altri Esempi Canvas

Di seguito ulteriori esempi di disegno su elementi canvas:

Esempio - Linee

Disegna una linea specificando il punto di partenza e di arrivo:

Esempio di Canvas: Linee

Codice JavaScript:

<script type="text/javascript">
var c=document.getElementById("myCanvas");
var cxt=c.getContext("2d");
cxt.moveTo(10,10);
cxt.lineTo(150,50);
cxt.lineTo(10,50);
cxt.stroke();
</script>

Elemento canvas:

<canvas id="myCanvas" width="200" height="100" style="border:1px solid #c3c3c3;">
Il tuo browser non supporta l'elemento canvas.
</canvas>

Prova personalmente

Esempio - Cerchi

Disegna un cerchio specificando le dimensioni, il colore e la posizione:

Esempio di Canvas: Cerchi

Codice JavaScript:

<script type="text/javascript">
var c=document.getElementById("myCanvas");
var cxt=c.getContext("2d");
cxt.fillStyle="#FF0000";
cxt.beginPath();
cxt.arc(70,18,15,0,Math.PI*2,true);
cxt.closePath();
cxt.fill();
</script>

Elemento canvas:

<canvas id="myCanvas" width="200" height="100" style="border:1px solid #c3c3c3;">
Il tuo browser non supporta l'elemento canvas.
</canvas>

Prova personalmente

Esempio - Gradienti

Utilizza il colore specificato per disegnare lo sfondo渐变:

Esempio di Canvas: Gradienti

Codice JavaScript:

<script type="text/javascript">
var c=document.getElementById("myCanvas");
var cxt=c.getContext("2d");
var grd=cxt.createLinearGradient(0,0,175,50);
grd.addColorStop(0,"#FF0000");
grd.addColorStop(1,"#00FF00");
cxt.fillStyle=grd;
cxt.fillRect(0,0,175,50);
</script>

Elemento canvas:

<canvas id="myCanvas" width="200" height="100" style="border:1px solid #c3c3c3;">
Il tuo browser non supporta l'elemento canvas.
</canvas>

Prova personalmente

Esempio - Immagine

Inserisci un'immagine sulla tela:

Esempio di Canvas: Immagini

Codice JavaScript:

<script>
window.onload = function() {
    var canvas = document.getElementById("myCanvas");
    var ctx = canvas.getContext("2d");
    var img = document.getElementById("scream");
   ctx.drawImage(img, 10, 10);
};
</script>

Elemento canvas:

<canvas id="myCanvas" width="244" height="182" style="border:1px solid #d3d3d3;">
Il tuo browser non supporta l'etichetta canvas HTML5.
</canvas>

Prova personalmente

Tutorial HTML Canvas

Per ulteriori informazioni sulla pittura a tela, visitare il nostro Tutorial HTML Canvas.

Pagine correlate

Manuale di riferimento:Etichetta <canvas> HTML 5

Manuale di riferimento:Oggetto Canvas DOM HTML