支持 JPG, PNG, GIF 格式
上传图片并调整设置后,点击"压缩图片"按钮
使用HTML5 Drag and Drop API 实现图片拖拽上传功能。
支持事件:
- dragover
:显示拖拽区域高亮效果
- dragleave
:移除高亮效果
- drop
:获取拖拽文件并处理
同时提供传统文件选择按钮作为备选方案。
使用 Canvas API 实现图片压缩:
1. 将图片绘制到Canvas上
2. 使用 toDataURL()
方法输出为JPEG格式
3. 通过 quality
参数控制压缩质量
压缩公式:
canvas.toDataURL('image/jpeg', quality/100)
质量参数范围:0.1(最低质量)到 1.0(最高质量)
使用Canvas进行图片缩放:
1. 计算缩放后尺寸:
scaledWidth = originalWidth * (scale/100)
scaledHeight = originalHeight * (scale/100)
2. 设置Canvas尺寸为缩放后尺寸
3. 使用 drawImage()
方法绘制缩放后的图片
缩放比例范围:10% 到 100%
所有操作均在浏览器中完成:
- 图片不会上传到任何服务器
- 处理过程在用户设备上执行
- 无网络传输,保护用户隐私
使用 FileReader API 读取本地文件,
URL.createObjectURL() 生成下载链接。
处理完成后,及时释放内存资源。