compressor-img
Javascript library for image compressor in client side
Table of contents
Getting started
Install
npm install compressor-img --save or yarn add compressor-img
Usage
Syntax
const params = {} scale: 70 quality: 70 originalImage: "data:image/jpeg;base64,/9j/4RiDRXhpZgAATU0AKgA...";params;
params
scale (Number) : The percentage of image scaling it starts from 1 to 100.
quality (Number) : The percentage of image quality it starts from 1 to 100.
originalImage (base64) : Image in base64 , example : "data:image/jpeg;base64,/9j/4RiDRXhpZgAATU0AKgA...".
holdCompress (bool)(default value false) : set this variable a true , if you dont want to start compress the image when the class ImageCompressor is instantiated example .
onSuccess (Function) : Callback after Compress the image. It will pass original file (base64) and compressed file (base64).
Example using holdcompress params
const params = {} scale: 70 quality: 70 originalImage: "data:image/jpeg;base64,/9j/4RiDRXhpZgAATU0AKgA..." holdCompress: true;const instanceImageCompressor = params;instanceImageCompressor;
Example with React
;; { superprops; thisstate = originalImage: null sizeOriganleImage: null compressedImage: null sizeCompressedImage: null ; } { event; if eventtargetfileslength !== 0 let reader = ; let file = eventtargetfiles0; reader { let imageCompressor = { this; } scale: 70 quality: 70 originalImage: readerresult ; }; reader; }; { return <div className="upload-file-container"> <input id="file" type="file" onChange=thishandleImageChange /> <div className="display-compressed-image"> thisstatesizeOriganleImage && thisstatesizeOriganleImage + " kb -> " + thisstatesizeCompressedImage + " kb" thisstatecompressedImage && <img style= maxWidth: "600px" maxheight: "400px" src=thisstatecompressedImage /> </div> </div> ; };
Browser support
- Chrome (latest)
- Firefox (latest)
- Safari (latest)
- Opera (latest)
- Edge (latest)