En son web geliştirme öğreticiler
 

Canvas Saat surat


Bölüm II - Bir Saat Yüzü çizin

Saat bir saat yüzü ihtiyacı var. Bir saat yüzünü çizmek için bir JavaScript işlevi oluşturun:

JavaScript:

function drawClock() {
    drawFace(ctx, radius);
}

function drawFace(ctx, radius) {
    var grad;

    ctx.beginPath();
    ctx.arc(0, 0, radius, 0, 2*Math.PI);
    ctx.fillStyle = 'white';
    ctx.fill();

    grad = ctx.createRadialGradient(0,0,radius*0.95, 0,0,radius*1.05);
    grad.addColorStop(0, '#333');
    grad.addColorStop(0.5, 'white');
    grad.addColorStop(1, '#333');
    ctx.strokeStyle = grad;
    ctx.lineWidth = radius*0.1;
    ctx.stroke();

    ctx.beginPath();
    ctx.arc(0, 0, radius*0.1, 0, 2*Math.PI);
    ctx.fillStyle = '#333';
    ctx.fill();
}
Kendin dene "

Kod Açıklaması

Bir oluşturma drawFace() saat yüzünü çizmek için işlevi:

function drawClock() {
    drawFace(ctx, radius);
}

function drawFace(ctx, radius) {
}

beyaz daire çizin:

ctx.beginPath();
ctx.arc(0, 0, radius, 0, 2*Math.PI);
ctx.fillStyle = 'white';
ctx.fill();

Radyal bir gradyanı oluşturma (95% and 105% of original clock radius) :

grad = ctx.createRadialGradient(0,0,radius*0.95, 0,0,radius*1.05);

iç, orta ve ark dış kenarı ile karşılık gelen 3 renk durur oluşturma:

grad.addColorStop(0, '#333');
grad.addColorStop(0.5, 'white');
grad.addColorStop(1, '#333');

renk durur 3D etkisi yaratmak.

Çizim nesnesinin inme tarzı olarak degrade tanımlayın:

ctx.strokeStyle = grad;

Çizim nesnesinin çizgi genişliğini tanımlar (10% of radius) :

ctx.lineWidth = radius * 0.1;

daire çizin:

ctx. stroke() ;

Saat merkezi çizin:

ctx.beginPath();
ctx.arc(0, 0, radius*0.1, 0, 2*Math.PI);
ctx.fillStyle = '#333';
ctx.fill();