function Filter_Invert() { Filter.call(this); this.parameters = [Angle]; this.render = function(cmd) { var imageObj = new Image(); imageObj.src = ronin.surface.active_layer.element.toDataURL('image/png'); var context = ronin.surface.active_layer.context(); var imageData = context.getImageData(0, 0, imageObj.width * 2, imageObj.height* 2); var data = imageData.data; for(var i = 0; i < data.length; i += 4) { data[i] = 255 - data[i]; data[i + 1] = 255 - data[i + 1]; data[i + 2] = 255 - data[i + 2]; } ronin.surface.active_layer.clear(); context.putImageData(imageData, 0, 0); } }