konva/src/filters/Invert.ts
2024-10-29 14:30:37 +01:00

24 lines
489 B
TypeScript

import { Filter } from '../Node';
/**
* Invert Filter
* @function
* @memberof Konva.Filters
* @param {Object} imageData
* @example
* node.cache();
* node.filters([Konva.Filters.Invert]);
*/
export const Invert: Filter = function (imageData) {
const data = imageData.data,
len = data.length;
for (let i = 0; i < len; i += 4) {
// red
data[i] = 255 - data[i];
// green
data[i + 1] = 255 - data[i + 1];
// blue
data[i + 2] = 255 - data[i + 2];
}
};