0

HTML5では、放射状のグラデーションで図形を塗りつぶしたい場合、次を使用します。

ctx.createRadialGradient(centerX1, centerY1, radius1, centerX2, centerY2, radius2);

しかし、これは円形の放射状グラデーションによって形を塗りつぶします。楕円形の放射状グラデーションで塗りつぶす方法は?

4

1 に答える 1

1

グラデーションを描画する前に、キャンバスコンテキストを変換します()。

var c = document.getElementById('mycanvas');
var ctx = c.getContext('2d');
var radgrad = ctx.createRadialGradient(100,100,20,100,100,50);
radgrad.addColorStop(0, '#A7D30C');  
radgrad.addColorStop(0.9, '#019F62');  
radgrad.addColorStop(1, 'rgba(1,159,98,0)');
ctx.scale(1,0.5);
ctx.fillStyle = radgrad;  
ctx.fillRect(50,50,150,150); 
于 2011-12-19T15:29:18.610 に答える