dxt-js

Javascript port of the squish DXT compression/decompression library using emscripten

Usage no npm install needed!

<script type="module">
  import dxtJs from 'https://cdn.skypack.dev/dxt-js';
</script>

README

dxt.js

Build Status

DXT (de)compression in nodejs and the browser (using browserify).

Usage

var dxt = require('dxt-js');
var imageData = getRawRGBADataFromSomeWhere();
var compressedData = dxt.compress(imageData, 256, 256, dxt.flags.DXT5); // assumes 256x256 image
var uncompressedData = dxt.decompress(imageData, 256, 256, dxtJS.flags.DXT5);

Note that all methods work with UInt8Array's so when using nodejs you'll have to conver them to and from node buffers.

Credits

dxt.js is based on libsquish compiled with emscripten and wouldn't be possible without the hard work of the respective authors.