UNPKG

@fdm-monster/server

Version:

FDM Monster is a bulk OctoPrint, Klipper, PrusaLink and BambuLab manager to set up, configure and monitor 3D printers. Our aim is to provide neat overview over your farm.

47 lines (46 loc) 1.05 kB
//#region src/utils/image-dimensions.ts function getImageDimensions(imageData, format) { if (format === "PNG") return getPngDimensions(imageData); else if (format === "JPG" || format === "JPEG") return getJpgDimensions(imageData); return { width: 0, height: 0 }; } function getPngDimensions(data) { if (data.length < 24) return { width: 0, height: 0 }; return { width: data.readUInt32BE(16), height: data.readUInt32BE(20) }; } function getJpgDimensions(data) { let offset = 2; while (offset < data.length) { if (data[offset] !== 255) break; const marker = data[offset + 1]; offset += 2; if (marker === 192 || marker === 194) { if (offset + 5 < data.length) { const height = data.readUInt16BE(offset + 1); return { width: data.readUInt16BE(offset + 3), height }; } break; } const segmentLength = data.readUInt16BE(offset); offset += segmentLength; } return { width: 0, height: 0 }; } //#endregion export { getImageDimensions }; //# sourceMappingURL=image-dimensions.js.map