* omg it’s compiling

* example actually works

* Expose compression level options

* Disable crypto and path module emulation in webpack

* Update README

* Remove small image

* Use -O3 on optipng

* Free memory after copy

* Handle unexpected file reader return types

* Rename level label to effort
This commit is contained in:
Surma
2018-09-04 16:49:45 +01:00
committed by Jake Archibald
parent 170d75482e
commit 54ad30a7ed
19 changed files with 1832 additions and 10 deletions

View File

@@ -9,6 +9,7 @@ import { FileDropEvent } from './custom-els/FileDrop';
import './custom-els/FileDrop';
import * as quantizer from '../../codecs/imagequant/quantizer';
import * as optiPNG from '../../codecs/optipng/encoder';
import * as mozJPEG from '../../codecs/mozjpeg/encoder';
import * as webP from '../../codecs/webp/encoder';
import * as identity from '../../codecs/identity/encoder';
@@ -89,6 +90,7 @@ async function compressImage(
): Promise<File> {
const compressedData = await (() => {
switch (encodeData.type) {
case optiPNG.type: return optiPNG.encode(image, encodeData.options);
case mozJPEG.type: return mozJPEG.encode(image, encodeData.options);
case webP.type: return webP.encode(image, encodeData.options);
case browserPNG.type: return browserPNG.encode(image, encodeData.options);