UNPKG

ai2png

Version:

Converts ANSI-IMAGE to png.

24 lines 805 B
function _(d,callback=()=>{},size=25){ var canvas = require("canvas"); _.ansi_image(d,r=>{ var ch = r.split("\n").map(x=>x.split(/ \x1b\[m/)).map(y=>y.map(x=>x.replace(/^\x1b\[48;5;(\d+)m/,"$1"))).map((x,i,a)=>{ x.pop(); return x.map(y=>+y); }); canvas = canvas.createCanvas(size * ch[0].length,size * ch.length); var ctx = canvas.getContext("2d"); var colors = require("./data.json"); for(var i = 0; i < ch.length; i++){ for(var j = 0; j < ch[i].length; j++){ ctx.fillStyle = colors[ch[i][j]].hexString; ctx.fillRect(j * size,i * size,size,size); } } callback({ image: canvas.createPNGStream(), url: canvas.toDataURL() }); }); } module.exports = _; module.exports.ansi_image = require("npmisgood-ansi-image");