Ich versuche ein Roulette mit Bild auf jeder Leinwand zu erstellen. Bisher gelingt es mir, einen Kreis zu kreieren und diesen Kreis zu drehen. Hier ist ein Beispielcode:Wie füge ich Bilder in Canvas-Kreisscheiben hinzu?
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
var radius = 100;
for (var i = 0; i < 8; i++) {
ctx.beginPath();
ctx.fillStyle = 'rgb(' + Math.floor(255 - 42.5 * i) + ', 95, 180)';
// We have to add this, otherwise, it will fill the minimum area needed to fill the arc
ctx.moveTo(300, 300);
ctx.arc(300, 300, radius, i * Math.PI/4, (i + 1) * ((Math.PI/4)), false);
ctx.closePath();
ctx.fill();
}
ctx.stroke();
#myCanvas {
border: 1px solid #d3d3d3;
}
<canvas id="myCanvas" width="500" height="500">
Your browser does not support the HTML5 canvas tag.
</canvas>
Es einen Kreis mit Scheiben erzeugt. Nun versuche ich, Bilder in diese Scheiben zu legen. Ich habe drawImage() benutzt, aber es hat meinen Zweck nicht erfüllt. Also bitte, wenn jemand eine Lösung kennt, bitte beantworten Sie es. Es waren 4 Tage, an denen ich in dieser Ausgabe feststecke.
Können Sie mit einem Bogen um das Bild Clip? –
Ich habe noch kein Bild abgeschnitten, aber ich bekomme den Bogen, wo ich Bild hinzufügen möchte. – Usman