blend-mode
a collection of channel-level blend modes, à la photoshop (shamelessly lifted from here, via here)
install
$ npm i blend-mode
usage
var blend = require('blend-mode/soft-light')
blend(0, 255)
example
var multiply = require('blend-mode/multiply')
var layer1 = [255, 128, 250, 255, 60, ...]
var layer2 = [156, 24, 18, 223, 119, ...]
var blended = []
var total = Math.min(layer1.length, layer2.length)
for (var i = 0; i < total; i += 4) {
blended[i] = multiply(layer1[i], layer2[i])
blended[i + 1] = multiply(layer1[i + 1], layer2[i + 1])
blended[i + 2] = multiply(layer1[i + 2], layer2[i + 2])
blended[i + 3] = layer1[i + 3]
}
page weight (browserified)
you should really only require the blend-mode/s you actually need, but if you must have the kitchen sink, it will cost you:
blend-mode.js | 3.89 kB |
blend-mode.min.js | 2.76 kB |
blend-mode.min.js.gz | 832 B |
license
let’s just say MIT and hope for the best?