UNPKG

fabric

Version:

Object model for HTML5 canvas, and SVG-to-canvas parser. Backed by jsdom and node-canvas.

39 lines (38 loc) 1.14 kB
//#region src/filters/shaders/grayscale.ts const fragmentSource = { average: ` precision highp float; uniform sampler2D uTexture; varying vec2 vTexCoord; void main() { vec4 color = texture2D(uTexture, vTexCoord); float average = (color.r + color.b + color.g) / 3.0; gl_FragColor = vec4(average, average, average, color.a); } `, lightness: ` precision highp float; uniform sampler2D uTexture; uniform int uMode; varying vec2 vTexCoord; void main() { vec4 col = texture2D(uTexture, vTexCoord); float average = (max(max(col.r, col.g),col.b) + min(min(col.r, col.g),col.b)) / 2.0; gl_FragColor = vec4(average, average, average, col.a); } `, luminosity: ` precision highp float; uniform sampler2D uTexture; uniform int uMode; varying vec2 vTexCoord; void main() { vec4 col = texture2D(uTexture, vTexCoord); float average = 0.21 * col.r + 0.72 * col.g + 0.07 * col.b; gl_FragColor = vec4(average, average, average, col.a); } ` }; //#endregion export { fragmentSource }; //# sourceMappingURL=grayscale.mjs.map