image-js
Version:
Image processing and manipulation in JavaScript
19 lines (18 loc) • 548 B
JavaScript
;
const {
Image
} = require('./common');
module.exports = function binary([str]) {
let lines = str.split(/\r?\n/).map(line => line.trim()).filter(line => line);
let width = lines[0].length;
let height = lines.length;
const trimmed = lines.join('');
const data = new Uint8Array(Math.ceil(trimmed.length / 8));
for (let i = 0; i < trimmed.length; i += 8) {
const index = i / 8;
data[index] = parseInt(trimmed.substr(i, 8).padEnd(8, '0'), 2);
}
return new Image(width, height, data, {
kind: 'BINARY'
});
};