@jimp/utils
TypeScript icon, indicating that this package has built-in type declarations

0.22.12 • Public • Published

@jimp/utils

Utils for jimp extensions.

Available Methods

isNodePattern

Determines if function was passed an node callback.

if (isNodePattern(cb)) {
  cb.call(this, null, this);
}

throwError

Either throws the error or calls the callback with the error.

if (/* check for error */) {
  return throwError.call(this, 'someError', cb);
}

scan

Scans through a region of the bitmap, calling a function for each pixel.

function removeRed(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] = 0;
      this.bitmap.data[index + 1] = green;
      this.bitmap.data[index + 2] = blue;
      this.bitmap.data[index + 3] = alpha;
    }
  );
}

scanIterator

It's possible to make an iterator scan with a for ... of, if you want to break the scan before it reaches the end, but note, that this iterator has a huge performance implication:

for (const { x, y, idx, image } of scanIterator(
  image,
  0,
  0,
  image.bitmap.width,
  image.bitmap.height
)) {
}

/@jimp/utils/

    Package Sidebar

    Install

    npm i @jimp/utils

    Weekly Downloads

    1,178,799

    Version

    0.22.12

    License

    MIT

    Unpacked Size

    16 kB

    Total Files

    10

    Last publish

    Collaborators

    • alisowski
    • oliver.moran