gulp-pajk-lwip

0.1.1 • Public • Published

gulp-lwip

Gulp.js plugin wrapping lwip image manipulation library.

Installation

You'll probably use this plugin together with gulp.js as build tool/task runner:

npm install --save-dev gulp-lwip

Notes

The strong point of lwip is that it allows to manipulate images without external dependencies like ImageMagick or similar. However, this doesn't mean you won't need anything else: during the installation, source files will be compiled using node-gyp, which means Python and a C++ compiler will be used. In particular, Windows installations will need Visual Studio 2013 at least.

See node-gyp's page for more informations.

Usage

var lwip = require("gulp-lwip");

gulp.src("./src/images/*.jpg")
    .pipe(lwip
        .scale(.5)
        .exportAs("png")
    )
    .pipe(gulp.dest("./assets/img/"));

gulp-lwip's usage is similar to lwip's in batch mode, chaining the desired filters one after the other, together with their parameters. Basically every processing filter can be used like that (resize, blur, saturate and so on). paste is replaced by putImage (read later). Check lwip's documentation to further informations.

Getters like width or getPixel are, of course, not supported, while writeFile and toBuffer are replaced by exportAs(format, parameters). format can be one of the formats accepted by lwip (i.e., "jpg", "png" or "gif"), or null, meaning that the original format is used; the optional argument parameters is a plain object meant to provide specific parameters when outputting the image file. exportAs might not be the last method in the call chain.

Additional methods

  • rescale(width[, height][, inter])

    rescale, when given both width and height, works exactly like resize. When height is omitted, though, the picture is scaled to the given width keeping the image's aspect ratio, whereas resize would produce square images. Similarly, when width == null and height is a number, the picture is resized to the given height with the same aspect ratio.

  • putImage(left, top, image)

    This method takes the role of paste. image can be either a Buffer object containing encoded image data, or a path pointing to an image file. The format is inferred from the content.

Tests

Tests are performed using mocha. Execute npm run test after installing the development dependencies, or just mocha if you have a compatible version installed globally.

License

MIT. See LICENSE for details.

Package Sidebar

Install

npm i gulp-pajk-lwip

Weekly Downloads

1

Version

0.1.1

License

MIT

Last publish

Collaborators

  • hkaju