javascript - Canvas : shape + shadow

标签 javascript canvas html5-canvas

我需要画一个形状然后添加阴影但是阴影在填充颜色之上我需要它在它下面..我无法很好地解释这种情况所以这里是 jsfiddle 上的一个例子

var canvas = document.getElementById("myCanvas");
var context = canvas.getContext("2d");
context.beginPath();
context.moveTo(170, 80);
context.bezierCurveTo(130, 100, 130, 150, 230, 150);
context.bezierCurveTo(250, 180, 320, 180, 340, 150);
context.bezierCurveTo(420, 150, 420, 120, 390, 100);
context.bezierCurveTo(430, 40, 370, 30, 340, 50);
context.bezierCurveTo(320, 5, 250, 20, 250, 50);
context.bezierCurveTo(200, 5, 150, 20, 170, 80);
context.closePath();
context.lineWidth = 5;     
context.fillStyle = "#8ED6FF";
context.strokeStyle = "#0000ff";     
context.shadowColor = "#000000";
context.shadowBlur    = 2;
context.shadowOffsetX = 5;
context.shadowOffsetY = 5;
context.fill();     
context.stroke();

http://jsfiddle.net/j8u8p/谢谢

最佳答案

http://jsfiddle.net/j8u8p/11/

注意:我所做的只是重新安排上下文调用并添加 globalCompositeOperation

附注这看起来更好:http://jsfiddle.net/j8u8p/13/

p.p.s 这被调整了,因为你提示这个差距:http://jsfiddle.net/j8u8p/16/

关于javascript - Canvas : shape + shadow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9229707/

相关文章:

javascript - JSON 字符串参数不起作用

javascript - 使用 selenium webdriver 等待网络空闲?

javascript - 如何从 webpack 输出中删除箭头函数

JavaFx Canvas 内存优化

javascript - 如何使用具有透明背景的 Canvas 获取 CSS 样式元素的 png 图像?

javascript - 如何在 JavaScript 中根据距头部圆的距离生成新的随机圆?

javascript - Apple 更新 13.4 后,PinchZoom.js 无法在 iOS 设备上运行

javascript - 如何在复选框检查上仅显示特定类数据

android - Canvas 的 `drawTextRun` 有什么用?它与 `drawText` 有何不同?

javascript - 使用 Kinetic JS 框架重绘图像