将图像滤镜应用到画布上。
预设选项是:
INVERT
反转图像中的颜色。不使用任何参数。
GRAY
将图像转换为灰度图像。不使用任何参数。
THRESHOLD
将图像转换为黑白图像。高于给定阈值具有灰度值的像素将转换为白色。其余的都转换为 黑色的。阈值必须介于 0.0(黑色)和 1.0(白色)之间。如果不指定值时,使用 0.5。
OPAQUE
将 alpha 通道设置为完全不透明。不使用任何参数。
POSTERIZE
限制图像中的颜色数量。每个颜色通道仅限于 指定的颜色数量。 2 到 255 之间的值是有效的,但是 值越低,结果越显著。默认值为 4。
BLUR
模糊图像。模糊程度由模糊半径指定。较大 值会增加模糊度。默认值为 4。在 P2D
模式中,使用高斯模糊。在 WEBGL
模式中,使用框模糊 。
ERODE
减少光照区域。不使用任何参数。
DILATE
增加光照区域。不使用任何参数。
默认情况下,因为更快, filter()
使用 WebGL 处理背景。 在 P2D
模式下 ,如可以通过添加 false
论证,禁用此功能例如 filter(BLUR, false)
。这可能有助于关闭图形处理器计算或者解决缺乏 WebGL 支持的问题。
在 WebGL 模式下,filter()
还可以用于定义着色器。参考 createFilterShader() 了解更多信息。
示例
语法
filter(filterType, [filterParam], [useWebGL])
filter(filterType, [useWebGL])
filter(shaderFilter)
参数
filterType
常量:
THRESHOLD、 GRAY、OPAQUE、INVERT、 POSTERIZE、BLUR、ERODE、DILATE 或 BLUR。
filterParam
数字:
每个过滤器独有的参数。
useWebGL
布尔:
控制是否使用快的 WebGL (GPU) 滤镜或原始图像滤镜的标志 过滤器(CPU);默认为 true
。
shaderFilter
p5.Shader:
已加载的着色器, 其中片段着色器使用了一个 tex0
统一变量。
Notice any errors or typos? Please let us know. Please feel free to edit src/image/pixels.js and open a pull request!