¿Cómo puedo dibujar un rectángulo con un efecto de degradado como el que se muestra a continuación utilizando el elemento canvas de HTML5?Degradado rectangular con elemento de lienzo HTML5
Edit: Gracias por todos los comentarios. Sí, ya he probado muchos métodos. Por ejemplo, ¿puedo usar el método createRadialGradient
como lo sugiere @Loktar? Aquí hay un código de ejemplo:
<html>
<head>
<title>test</title>
<script type="application/x-javascript">
function draw() {
var canvas = document.getElementById("canvas"),
ctx = canvas.getContext("2d");
var grad1 = ctx.createRadialGradient(50, 50, 0, 50, 50, 50);
grad1.addColorStop(0, 'rgba(255, 252, 0, 1)');
grad1.addColorStop(1, 'rgba(68, 205, 37, 1)');
ctx.fillStyle = grad1;
ctx.fillRect(0, 0, 100, 100);
}
</script>
</head>
<body onload="draw();">
<div>
<canvas id="canvas" width="100" height="100"></canvas>
</div>
</body>
</html>
Pero el resultado no es exactamente lo que quiero:
Esto debe hacerse fácilmente con un método como PathGradientBrush
proporcionado por GDI +. No estoy seguro si es posible con el elemento canvas de HTML5.
¿Qué ha intentado hasta ahora? PD. https://developer.mozilla.org/en/Canvas_tutorial%3aApplying_styles_and_colors 5 mins ¡y podrás hacerlo! – stecb
heh idk unos 5 min. Aquí está mi horrible intento, ni siquiera voy a publicarlo como respuesta http://jsfiddle.net/loktar/MAjPQ/1/ – Loktar
obv '5 mins' significa que es fácil leer ese documento e intentar obtener una solución fácilmente :) – stecb