mirror of
https://github.com/GoogleChromeLabs/squoosh.git
synced 2025-11-17 19:19:47 +00:00
Decoder works
This commit is contained in:
@@ -1,35 +0,0 @@
|
||||
<!doctype html>
|
||||
<input type="file" id="file">
|
||||
<button id="go">Go</button>
|
||||
<script type="module">
|
||||
import encFactory from "./enc/basis_enc.js";
|
||||
import decFactory from "./dec/basis_dec.js";
|
||||
|
||||
const {file, go} = document.all;
|
||||
async function main() {
|
||||
const encoder = await encFactory();
|
||||
const bitmap = await createImageBitmap(file.files[0]);
|
||||
const canvas = new OffscreenCanvas(bitmap.width, bitmap.height);
|
||||
const ctx2 = canvas.getContext("2d");
|
||||
ctx2.drawImage(bitmap, 0, 0);
|
||||
const imgData = ctx2.getImageData(0, 0, canvas.width, canvas.height);
|
||||
const result = encoder.encode(imgData.data, imgData.width, imgData.height);
|
||||
const decoder = await decFactory();
|
||||
console.log({result});
|
||||
const resultImgData = decoder.decode(result);
|
||||
console.log({resultImgData});
|
||||
const cvs = document.createElement("canvas");
|
||||
cvs.width = resultImgData.width;
|
||||
cvs.height = resultImgData.height;
|
||||
const ctx = cvs.getContext("2d");
|
||||
ctx.putImageData(resultImgData, 0, 0);
|
||||
document.body.append(cvs);
|
||||
// const blob = new File([result], "lol.basis");
|
||||
// const u = URL.createObjectURL(blob);
|
||||
// const a = document.createElement("a")
|
||||
// a.download = "lol.basis";
|
||||
// a.href = u;
|
||||
// a.click();
|
||||
}
|
||||
go.onclick = main;
|
||||
</script>
|
||||
Reference in New Issue
Block a user