pxls

    2.3.2 • Public • Published

    pxls unstable Build Status

    Take in custom pixels container, return normalized 4-channel Uint8Array with pixels. Detects float/int input pixels, handles Infinities, unfolds structures.

    npm install pxls

    var pxls = require('pxls')
    var ndarray = require('ndarray')
     
    pxls([[0,0,0], [1,1,1]]) // <uint8 0,0,0,255, 255,255,255,255>
    pxls([0, 1], 1) // <uint8 0,0,0,255, 255,255,255,255>
    pxls([0,0,0, 1,1,1], [2,1]) // <uint8 0,0,0,255, 255,255,255,255>
    pxls(new Ndarray([0,1], [2,1]) // <uint8 0,0,0,255, 255,255,255,255>
    pxls(new Ndarray([0,0,0,1,1,1], [2,1,3]) // <uint8 0,0,0,255, 255,255,255,255>

    let pixels = pxls(arr, shape|step?)

    Takes input actual pixels container arr and returns 4 channels flat Uint8Array pixels with layout [r,g,b,a, r,g,b,a, r,g,b,a, ...].

    arr can be an Array of Arrays, TypedArray, Ndarray, ImageData or DOM container Image, Video, ImageBitmap, Canvas2D, Context2D, WebGLContext.

    1-channel input is mapped as grayscale [v,v,v,255, v,v,v,255]. 3-channel input fills last channel with 255 [r,g,b,255, r,g,b,255].

    shape can describe the shape of input array, eg. [100,100,3] or [10,10].

    step optionally can define input number of channels in flat array, that is detected automatically for nested/ndarrays.

    See also

    License

    (c) 2018 Dmitry Yv. MIT License

    Install

    npm i pxls

    DownloadsWeekly Downloads

    100,403

    Version

    2.3.2

    License

    MIT

    Unpacked Size

    15.2 kB

    Total Files

    7

    Last publish

    Collaborators

    • dy