Convert to json from default JS object

master
Martin Boonk 2022-03-13 10:35:10 +01:00
parent c1f1d0938a
commit 3608574ab2
1 changed files with 19 additions and 2 deletions

View File

@ -744,6 +744,22 @@
console.log("After precompiling", precompiledJs); console.log("After precompiling", precompiledJs);
} }
function convertJsToJson(imgstr){
var E = {};
E.toArrayBuffer = (s)=>s;
var atob = (s)=>s;
var imgstr = "imgstr = " + imgstr;
eval(imgstr);
imgstr.img = imgstr.buffer;
delete imgstr.buffer;
if (imgstr.palette) {
imgstr.paletteData = "[" + imgstr.palette.toString() + "]";
delete imgstr.palette;
}
console.log("converted Image JSON", JSON.stringify(imgstr));
return JSON.stringify(imgstr);
}
function imageLoaded() { function imageLoaded() {
var options = {}; var options = {};
@ -756,7 +772,7 @@
options.brightness = 0; options.brightness = 0;
options.contrast = 0; options.contrast = 0;
options.mode = infoJson.color ? infoJson.color : "1bit"; options.mode = infoJson.color ? infoJson.color : "1bit";
options.output = "jsonobject"; options.output = "object";
console.log("Loaded image has path", this.path); console.log("Loaded image has path", this.path);
var jsonPath = this.path.split("/"); var jsonPath = this.path.split("/");
@ -798,6 +814,7 @@
var outputImageData = new ImageData(options.rgbaOut, options.width, options.height); var outputImageData = new ImageData(options.rgbaOut, options.width, options.height);
ctx.putImageData(outputImageData,this.width,0); ctx.putImageData(outputImageData,this.width,0);
imgstr = convertJsToJson(imgstr);
// checkerboard for transparency on original image // checkerboard for transparency on original image
var imageData = ctx.getImageData(0, 0, this.width, this.height); var imageData = ctx.getImageData(0, 0, this.width, this.height);