Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
jimpEvChange('scan', function(x, y, w, h, f, cb) {
if (typeof x !== 'number' || typeof y !== 'number') {
return throwError.call(this, 'x and y must be numbers', cb);
}
if (typeof w !== 'number' || typeof h !== 'number') {
return throwError.call(this, 'w and h must be numbers', cb);
}
if (typeof f !== 'function') {
return throwError.call(this, 'f must be a function', cb);
}
const result = scan(this, x, y, w, h, f);
if (isNodePattern(cb)) {
cb.call(this, null, result);
}
return result;
});
function toAGBR(image) {
return scan(image, 0, 0, image.bitmap.width, image.bitmap.height, function(
x,
y,
index
) {
const red = this.bitmap.data[index + 0];
const green = this.bitmap.data[index + 1];
const blue = this.bitmap.data[index + 2];
const alpha = this.bitmap.data[index + 3];
this.bitmap.data[index + 0] = alpha;
this.bitmap.data[index + 1] = blue;
this.bitmap.data[index + 2] = green;
this.bitmap.data[index + 3] = red;
}).bitmap;
}
function fromAGBR(bitmap) {
return scan({ bitmap }, 0, 0, bitmap.width, bitmap.height, function(
x,
y,
index
) {
const alpha = this.bitmap.data[index + 0];
const blue = this.bitmap.data[index + 1];
const green = this.bitmap.data[index + 2];
const red = this.bitmap.data[index + 3];
this.bitmap.data[index + 0] = red;
this.bitmap.data[index + 1] = green;
this.bitmap.data[index + 2] = blue;
this.bitmap.data[index + 3] = bitmap.is_with_alpha ? alpha : 0xff;
}).bitmap;
}