SimpleImage.js is a simple image library with a minimal API, well-suited for CS0/CS1-style courses. Thousands of students have used assignments based off of SimpleImage.js, building Instagram-like filters and augmented reality (a la Pokemon GO).
Download SimpleImage.js or install it with bower:
bower install SimpleImage
Each SimpleImage requires an HTML canvas, which is used to read and display the
contents of the image. Initialize the SimpleImage with new SimpleImage(canvas, [readOnly=true]).
Returns the pixel at the specified location as an RGBA pixel. R, G, B, and A are each in the range [0, 255].
var pixel = image.getRGB(x, y); // {r: 200, g: 150, b: 100, a: 50 }Returns the pixel at the specified location as an HSLA pixel. H is in the range [0, 360]; S, L and A are in the range [0, 1].
var pixel = image.getHSL(x, y); // { h: 320, s: 0.6, l: 0.7, a: 0.3 }Changes the pixel at the specified location to the specified RGBA pixel. r, g,
b, and a are each in the range [0, 255].
var pixel = image.getRGB(x, y);
pixel.r = 0; // remove the red channel, leave g and b unchanged
image.setRGB(x, y, pixel);Changes the pixel at the specified location to the specified HSLA pixel.
h is in the range [0, 360]; s, l, and a are in the range [0, 1].
var pixel = image.getHSL(x, y);
pixel.h = 200; // set the hue to 200 (blue), leaving other channels unchanged
image.setHSL(x, y, pixel);Renders the image to the canvas.
var canvas = document.getElementById("myCanvas");
var simpleImage = new SimpleImage(canvas);
...
simpleImage.render();