This commit is contained in:
2025-02-26 14:49:25 +07:00
commit 1c1d9c4474
6403 changed files with 1953774 additions and 0 deletions

View File

@@ -0,0 +1,37 @@
/**
* JPEG Lossless decoder worker.
*/
// Do not warn if these variables were not defined before.
/* global importScripts, self, jpeg */
importScripts('lossless-min.js');
self.addEventListener('message', function (event) {
// bytes per element
var bpe = event.data.bitsAllocated / 8;
// decode DICOM buffer
var buf = new Uint8Array(event.data.buffer);
var decoder = new jpeg.lossless.Decoder();
var decoded = decoder.decode(buf.buffer, 0, buf.buffer.byteLength, bpe);
// post decoded data
var res = null;
if (event.data.bitsAllocated === 8) {
if (event.data.isSigned) {
res = new Int8Array(decoded.buffer);
}
else {
res = new Uint8Array(decoded.buffer);
}
}
else if (event.data.bitsAllocated === 16) {
if (event.data.isSigned) {
res = new Int16Array(decoded.buffer);
}
else {
res = new Uint16Array(decoded.buffer);
}
}
self.postMessage([res]);
}, false);