var srcBox, srcImg, dstImg; var epdArr, epdInd, palArr; var curPal; function getElm(n) { return document.getElementById(n); } function setInn(n, i) { document.getElementById(n).innerHTML = i; } function processFiles(files) { var file = files[0]; var reader = new FileReader(); srcImg = new Image(); reader.onload = function (e) { setInn("srcBox", ''); var img = getElm("imgView"); img.src = e.target.result; srcImg.src = e.target.result; }; reader.readAsDataURL(file); } function drop(e) { e.stopPropagation(); e.preventDefault(); var files = e.dataTransfer.files; processFiles(files); } function ignoreDrag(e) { e.stopPropagation(); e.preventDefault(); } function getNud(nm, vl) { return '' + nm + ":" + ''; } function Btn(nm, tx, fn) { return '
" + '
'; } function RB(vl, tx) { return '" + tx; } window.onload = function () { srcBox = getElm("srcBox"); srcBox.ondragenter = ignoreDrag; srcBox.ondragover = ignoreDrag; srcBox.ondrop = drop; srcImg = 0; epdInd = 0; palArr = [ [[0, 0, 0], [255, 255, 255]], [[0, 0, 0], [255, 255, 255], [127, 0, 0]], [[0, 0, 0], [255, 255, 255], [127, 127, 127]], [[0, 0, 0], [255, 255, 255], [127, 127, 127], [127, 0, 0]], [[0, 0, 0], [255, 255, 255]], [[0, 0, 0], [255, 255, 255], [220, 180, 0]], [[0, 0, 0]], [[0, 0, 0], [255, 255, 255], [0, 255, 0], [0, 0, 255], [255, 0, 0], [ 255, 255, 0, ], [255, 128, 0]], ]; epdArr = [ [200, 200, 0], [200, 200, 3], [152, 152, 5], [122, 250, 0], [104, 212, 1], [104, 212, 5], [104, 212, 0], [176, 264, 0], [176, 264, 1], [128, 296, 0], [128, 296, 1], [128, 296, 5], [128, 296, 0], [400, 300, 0], [400, 300, 1], [400, 300, 5], [600, 448, 0], [600, 448, 1], [600, 448, 5], [640, 384, 0], [640, 384, 1], [640, 384, 5], [800, 480, 0], [800, 480, 1], [880, 528, 1], [600, 448, 7], [880, 528, 0], [280, 480, 0], [152, 296, 0], [648, 480, 1], [128, 296, 1], [200, 200, 1], [104, 214, 1], [128, 296, 0], [400, 300, 1], [152, 296, 1], [648, 480, 0], [640, 400, 7], [176, 264, 1], [122, 250, 0], [122, 250, 1], [240, 360, 0], [176, 264, 0], ]; setInn( "BT", Btn(0, "Select image file", "processFiles(this.files);") + Btn(1, "Level: mono", "procImg(true,false);") + Btn(2, "Level: color", "procImg(true,true);") + Btn(3, "Dithering: mono", "procImg(false,false);") + Btn(4, "Dithering: color", "procImg(false,true);") + Btn(5, "Upload image", "uploadImage();"), ); setInn("XY", getNud("x", "0") + getNud("y", "0")); setInn("WH", getNud("w", "200") + getNud("h", "200")); setInn( "RB", RB(0, "1.54 ") + RB(1, "1.54b") + RB(2, "1.54c 
") + RB(3, "2.13 ") + RB(4, "2.13b") + RB(5, "2.13c
") + RB(6, "2.13d") + RB(7, "2.7  ") + RB(8, "2.7b 
") + RB(9, "2.9  ") + RB(10, "2.9b ") + RB(11, "2.9c 
") + RB(12, "2.9d ") + RB(13, "4.2  ") + RB(14, "4.2b 
") + RB(15, "4.2c ") + RB(16, "5.83 ") + RB(17, "5.83b
") + RB(18, "5.83c ") + RB(19, "7.5  ") + RB(20, "7.5b 
") + RB(21, "7.5c") + RB(22, "7.5 V2") + RB(23, "7.5b V2
") + RB(24, "7.5b HD ") + RB(25, "5.65f
") + RB(26, "7.5 HD ") + RB(27, "3.7 ") + RB(28, "2.66
") + RB(29, "5.83b V2 ") + RB(30, "2.9b V3
") + RB(31, "1.54b V2 ") + RB(32, "2.13b V3
") + RB(33, "2.9 V2 ") + RB(34, "4.2b V2
") + RB(35, "2.66b ") + RB(36, "5.83 V2
") + RB(37, "4.01 f ") + RB(38, "2.7b V2
") + RB(39, "2.13 V3 ") + RB(40, "2.13 B V4
") + RB(41, "3.52 ") + RB(42, "2.7 V2"), ); }; function rbClick(index) { getElm("nud_w").value = +epdArr[index][0]; getElm("nud_h").value = +epdArr[index][1]; epdInd = index; }