在HTML <canvas>
上,实现高斯模糊的唯一方法是使用shadowBlur
属性。但是,浏览器的模糊量不一致。
MDN documentation page上的示例已经明显区别了。
在Chrome中:
在Firefox中:
与Chrome相比,Firefox中的模糊效果更大。
创建高斯模糊效果的其他方式(非canvas
)包括:
<feGaussianBlur>
filter
属性它们都使用标准差来定义模糊,从而实现浏览器的一致性。
有很多方法可以在画布上“伪造”高斯模糊,例如使用精心设计的linear gradient,或者操纵图像pixel-by-pixel。
制作高斯模糊的能力似乎是HTML画布规范中非常缺乏的。有没有办法让模糊,或许有更新的技术?