前端图片压缩
前几天做项目,由于要上传大量的扫描图片,为了加快上传速度,就自然而然的想到了图片压缩,最近有了点时间就整理了下代码,贴出来以备后用。
在压缩图片的过程中主要使用了FileReader 、canvas、以及base64长度的计算,整个功能的思路并不复杂,实现过程大致如下:
(1) 用户上传的时候通过input onchange事件拿到file对象,然后把file对象通过 FileReader转成base64字符串
(2)新建img对象 把数据赋值到img对象
(3)新建canvas对象 用canvas.toDataURL() 实现压缩
代码并不复杂,但是还是小小的踩了几个坑的,详细代码如下:
图片转base64
学如逆水行舟,不进则退!
与诸君共勉!