Jasc Paint Shop Pro Palette file library in Node.js.
let Palette =let readFileSync writeFileSync =let pal =// pal is now an extended array of [r, g, b] colour arrayspal //→ colour at index 0pal0 //→ colour at index 0pal //→ colour at index 12pal //→ colour at index 0 is now #ff0077pal12 = 0xff 0xff 0xff //→ colour at index 12 is now #ffffffpal // orpal + '' //→ new palette file source
Jasc Paint Shop Pro Palette files are used in the Genie engine, of Age of Empires 2 fame, and probably somewhere else. (Paint Shop Pro? Maybe? I wouldn't know!)
let pal = Palette(buf|string)
Parses a Buffer or string into an array of colours.
let pal = Palette(array)
Adds the below Palette methods to the given array.
let pal = Palette()
Creates a new colour array with the below Palette methods.
pal or pal.getColor(0)
Gets the colour at a given index. Colours are plain old
[ r, g, b ] arrays, three integers between 0 and 255.
undefined if there is no colour at the given index.
pal = color or pal.setColor(0, color)
Sets the colour at a given index. Note that it doesn't actually check if you've put in valid colours.
setColor method also returns the palette so you can chain it (
pal.setColor(0, color0).setColor(2, color2)).
(pal + '') or pal.toString()
"Unparses" the colour array into a proper Palette source string.