Canvas之滤镜
// ctx.filter = 'blur(4px)';//模糊
ctx.filter = 'brightness(1.5)';//亮度
// ctx.filter = 'contrast(1.5)';//对比度
ctx.filter = 'saturate(1.5)';//饱和度
// ctx.filter = 'grayscale(1)';//灰度
ctx.filter = 'sepia(1)';//色相
ctx.filter = 'invert(1)';//反色
ctx.filter = 'drop-shadow(10px 10px 10px #acf)';//阴影
ctx.filter = 'hue-rotate(90deg)';//色调旋转
Canvas 提供了封装好的滤镜,不同于 svg 可以进行详细的编辑。使用 ctx.filter 属性可以进行一种或者多种滤镜的配置。
blur 配置模糊度,数值越大越模糊。 brightness 配置亮度,参数为百分比,1 为原样,<1 变暗 >1 变亮。contract 配置对比度,<1 颜色越接近,最后为灰色,>1 颜色差距越大。saturate 配置饱和度,>1 红色越大,绿色蓝色越小,颜色越鲜明,<1 颜色接近。 grayscale 配置灰色,1 为灰色。sepia 配置怀旧风格,也就是深褐色,1 为怀旧。invert 配置反色,1 为反色。drop-shadow 配置阴影,参数为x,y偏移量,模糊半径,颜色。hue-rotate 配置色盘的旋转角度来调整整体色调。
可以填写多个滤镜。url(svgFilterID) 可以引用svg滤镜。