Neueste Web-Entwicklung Tutorials
 

Canvas Clock


In diesen Kapiteln werden wir eine analoge Uhr mit HTML-Leinwand bauen.


Teil I - Erstellen Sie die Leinwand

Die Uhr benötigt eine HTML-Container. Erstellen Sie ein 300 x 300 Pixel HTML-Leinwand:

HTML-Code:

<!DOCTYPE html>
<html>
<body>

<canvas id="canvas" width="300" height="300" style="background-color:#333"></canvas>

<script>
var canvas = document.getElementById("canvas");
var ctx = canvas.getContext("2d");
var radius = canvas.height / 2;
ctx.translate(radius, radius);
radius = radius * 0.90
drawClock();

function drawClock() {
    ctx.arc(0, 0, radius, 0 , 2*Math.PI);
    ctx.fillStyle = "white";
    ctx.fill();
}
</script>

</body>
</html>
Versuch es selber "

-Code Erklärung

Fügen Sie ein HTML <canvas> -Element auf Ihrer Seite:

<canvas id="canvas" width="300" height="300" style="background-color:#333"></canvas>

Erstellen Sie eine Leinwand Objekt (var Leinwand) aus dem HTML-Canvas-Element:

var canvas = document.getElementById("canvas");

Erstellen Sie eine 2D-Zeichnung-Objekt (var ctx) für die Leinwand Objekt:

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

Berechnen des Takt Radius, um die Höhe der Leinwand unter Verwendung von:

var radius = canvas.height / 2;

Unter Verwendung der Leinwand Höhe der Uhr Radius zu berechnen, macht die Uhr arbeiten für alle Leinwand Größen.

Ordnen Sie die (0,0) Position (des Zeichnungsobjekts) in die Mitte der Leinwand:

ctx.translate(radius, radius);

Reduzieren Sie die Uhr Radius (bis 90%) innerhalb der Leinwand, um die Uhr gut zu zeichnen:

radius = radius * 0.90;

Erstellen Sie eine Funktion, die Uhr zu ziehen:

function drawClock() {
    ctx.arc(0, 0, radius, 0 , 2*Math.PI);
    ctx.fillStyle = "white";
    ctx.fill();
}