compress-base64
Version:
compress base64
41 lines (36 loc) • 1.17 kB
JavaScript
function compressImage(file) {
return new Promise((resolve) => {
if (typeof FileReader === 'function') {
const reader = new FileReader();
reader.onload = (event) => {
window.CompressBase64.default(event.target.result, {
width: 100,
type: 'image/png',
max: 7, // max size
min: 5,
quality: 0.8,
}).then((result) => {
console.log(result.length);
resolve(result);
});
};
reader.readAsDataURL(file);
} else {
alert('Your browser does not support FileReader');
}
});
}
document
.getElementById('input')
.addEventListener('change', async function (event) {
const file = event.target.files[0];
if (file) {
const originalImage = document.getElementById('originalImage');
const compressedImage = document.getElementById('compressedImage');
originalImage.src = window.URL.createObjectURL(file);
originalImage.style.display = 'block';
const compressedDataUrl = await compressImage(file);
compressedImage.src = compressedDataUrl;
compressedImage.style.display = 'block';
}
});