计科知识库
  • 源界面
  • 博客圈
  • 专题
  • 博友
  • 登录
  • 注册
源界面 源界面 9天前

js实现图片压缩上传

js

javascript 处理图片压缩、剪切、模糊和上传
一:js脚本实现图片压缩 - CompressImageUtiles

特点:
1 体积小,4kb;
2 支持blob格式上传和base64格式上传

  1. 1. // html
  2. 2. <input type="file" id="input-img">
  3. 3.
  4. 4. //引入脚本
  5. 5. <script src="./CompressImageUtiles.js"></script>
  6. 6.
  7. 7.
  8. 8. <script>
  9. 9. /**
  10. 10. * 支持blob格式上传和base64格式上传
  11. 11. * */
  12. 12. let inputDom = document.querySelector('#input-img')
  13. 13. inputDom.onchange = function(){
  14. 14. const fileObj = inputDom.files[0];
  15. 15. _compressAndUploadFile(fileObj);
  16. 16. }
  17. 17. function _compressAndUploadFile(file){
  18. 18. compressImage(file).then(resultObj => {
  19. 19. let {canvas,blob,base64,fileName,oSize} = resultObj
  20. 20. if (blob.size > oSize){
  21. 21. that._uploadFile(file, fileName);
  22. 22. } else {
  23. 23. //压缩后比原来小,上传压缩后的
  24. 24. _uploadFile(blob, fileName)
  25. 25. }
  26. 26. // 下载
  27. 27. downloadImgFromBlob(blob,fileName)
  28. 28. })
  29. 29. }
  30. 30. //上传
  31. 31. function _uploadFile(file){
  32. 32. let params = new FormData();
  33. 33. params.append("file", file);
  34. 34. }

demo地址:https://github.com/zhangfeng001/compressUtls-demo
ssh:git@github.com:zhangfeng001/compressUtls-demo.git

  • © 2025 源界面 源码为笔,博客为路,写就数字未来
  • 建议
  • 图片压缩
  • | 鄂ICP备14016484号-6

    鄂公网安备 42068402000140