为什么只出现了第一个addColorStop中的颜色?
来源:5-2 编程练习
Joezoe
2018-04-20 20:34:41
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>canvas渐变</title> </head> <body> <canvas id="canvas" width="600px" height="600px">您的浏览器不支持</canvas> <script> var canvas = document.getElementById("canvas"); var ctx = canvas.getContext("2d"); ctx.translate(300, 300); var linearG = ctx.createLinearGradient(0, 0, 600, 600); linearG.addColorStop(0, "orange"); linearG.addColorStop(0.5, "pink"); linearG.addColorStop(0.8, "lightblue"); ctx.arc(0, 0, 150, 0, Math.PI * 2, true); ctx.fillStyle = linearG; ctx.fill(); </script> </body> </html>
请教老师, 没看出问题, 在几个浏览器试了, 圆中间都只有橙色一种颜色, 没有渐变效果
1回答
线性渐变两个点之前的距离的一半超过所设圆形的半径,所以设置的初始颜色只能显示橙色。
相似问题