'How to auto-compress Images while uploading image in angularjs
Here is my HTML form:
<form name="myForm" ng-submit="">
    <input ng-model='file' type="file"/>
    <input type="submit" value='Submit'/>
</form>
I want to upload an image. Here if the file size is big(like 3 or 4 MB), I want to compress image automatically to 1MB or less than that. Any options are there to autocompress images in angularjs or javascript.
Solution 1:[1]
This Angular directive compresses jpeg or png files using angularjs on client side. Read more about it here
This module depends on angularjs, so make sure you've added angularjs dependency and then angular-image-compress.js. Something like
angular.module('myApp', ['ngImageCompress']);
This is how you can achieve what you want.
 <input id="inputImage" type="file" accept="image/*" image="image1" resize-max-height="800" resize-max-width="800" resize-quality="0.7" resize-type="image/jpg" ng-image-compress />
Directives used in above input tag are self explanatory
Solution 2:[2]
you can use image-compressor, where you can specify your desired height and width of your image.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source | 
|---|---|
| Solution 1 | Muhammad Usman | 
| Solution 2 | swathi_sri | 
