@bsj/angular-image-picker
Version:
Angular image picker
96 lines • 3.29 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
/*
* Built in canvas filters
*/
exports.Filters = {
effects: {},
ensureRGBRange: function (v) {
if (isNaN(v)) {
console.log('V is undefined', v);
}
if (v < 0) {
return 0;
}
else if (v > 255) {
return 255;
}
return v;
}
};
exports.Filters.effects['Grey'] = function (imageData) {
var d = imageData.data;
for (var i = 0; i < d.length; i += 4) {
var r = d[i];
var g = d[i + 1];
var b = d[i + 2];
var v = 0.2126 * r + 0.7152 * g + 0.0722 * b;
d[i] = d[i + 1] = d[i + 2] = v;
}
};
exports.Filters.effects['Light-Grey'] = function (imageData) {
var d = imageData.data;
for (var i = 0; i < d.length; i += 4) {
var r = d[i];
var g = d[i + 1];
var b = d[i + 2];
var v = 0.2126 * r + 0.7152 * g + 0.0722 * b;
d[i] = d[i + 1] = d[i + 2] = v;
d[i] += d[i];
d[i + 1] += d[i + 1];
d[i + 2] += d[i + 2];
}
};
exports.Filters.effects['Redscale'] = function (imageData, adjustment) {
var d = imageData.data;
for (var i = 0; i < d.length; i += 4) {
var r = d[i];
d[i] = exports.Filters.ensureRGBRange(r + adjustment);
d[i + 1] += d[i + 1];
d[i + 2] += d[i + 2];
}
};
exports.Filters.effects['Greenscale'] = function (imageData, adjustment) {
var d = imageData.data;
for (var i = 0; i < d.length; i += 4) {
var g = d[i + 1];
d[i] = d[i];
d[i + 1] += exports.Filters.ensureRGBRange(g + adjustment);
d[i + 2] += d[i + 2];
}
};
exports.Filters.effects['Bluescale'] = function (imageData, adjustment) {
var d = imageData.data;
for (var i = 0; i < d.length; i += 4) {
var b = d[i + 2];
d[i] = d[i];
d[i + 1] += d[i + 1];
d[i + 2] += exports.Filters.ensureRGBRange(b + adjustment);
}
};
exports.Filters.effects['Brightness'] = function (imageData, adjustment) {
var d = imageData.data;
for (var i = 0; i < d.length; i += 4) {
var r = d[i];
var g = d[i + 1];
var b = d[i + 2];
d[i] += exports.Filters.ensureRGBRange(r + adjustment);
d[i + 1] += exports.Filters.ensureRGBRange(g + adjustment);
d[i + 2] += exports.Filters.ensureRGBRange(b + adjustment);
}
};
exports.Filters.effects['Manual'] = function (imageData, adjustment, blueScaleAdjustment, greenScaleAdjustment, redScaleAdjustment) {
if (blueScaleAdjustment === void 0) { blueScaleAdjustment = -255; }
if (greenScaleAdjustment === void 0) { greenScaleAdjustment = -255; }
if (redScaleAdjustment === void 0) { redScaleAdjustment = -255; }
var d = imageData.data;
for (var i = 0; i < d.length; i += 4) {
var r = d[i];
var g = d[i + 1];
var b = d[i + 2];
d[i] += exports.Filters.ensureRGBRange(r + redScaleAdjustment);
d[i + 1] += exports.Filters.ensureRGBRange(r + greenScaleAdjustment);
d[i + 2] += exports.Filters.ensureRGBRange(r + blueScaleAdjustment);
}
};
//# sourceMappingURL=filters.js.map
;