图像处理
函数
图片压缩
1 | const tool = { |
图片压缩、方向纠正、预览、上传
实现原理
- 用filereader读取用户上传的图片数据
- 将img绘制到canvas上,用EXIF.js对图片方向进行纠正,再调用canvas.toDataURL对图片进行压缩,获取到压缩后的base64格式图片数据,转成二进制
1 | 1. 可以直接把base64数据转为File对象,如下: |
工具
RECOMPRESSOR
在线图片优化工具,在文件尺寸和质量之间选择完美平衡。智图
在线高效优质图片优化,大图需要下载客户端。
库
- Pica
减小大图像的上传大小,节省上传时间。
在图像处理上节省服务器资源。
在浏览器中生成缩略图。
注意。如果您需要调整File/Blob的大小(通过表单的文件输入),请考虑使用 image-blob-reduce。
Lena.js
用于图像处理的微型库,有 22 个图像滤镜。Compressor.js
JavaScript图像压缩器。使用浏览器的本机canvas.toBlob API进行压缩工作,这意味着它是有损压缩。通常使用此方法在上载客户端映像文件之前对其进行预压缩。Fabric.js
使用 canvas JavaScript 在网页上轻松创建简单的形状(如矩形,圆形,三角形和其他多边形)或由许多路径组成的更复杂的形状。Fabric.js将允许您使用鼠标来操纵这些对象的大小,位置和旋转。blurify
用于模糊图片merge-images
图像合并cropperjs
JavaScript 图像裁剪,旋转,缩放。marvinj
滤镜、裁剪grade
提供图像中的前2种主要颜色生成的互补渐变
相关资料
最优图像优化√
智图√
手把手教你如何编写一个前端图片压缩、方向纠正、预览、上传插件√
图片压缩原理
图片懒加载从简单到复杂
高质量前端快照方案:来自页面的「自拍」
一个有趣的例子带你入门canvas
了解 JS 压缩图片,这一篇就够了
HTMLCanvasElement.toDataURL
CanvasRenderingContext2D.drawImage()
FileReader
在web应用程序中使用文件
FormData 对象的使用
Using XMLHttpRequest
You need to set
install_url
to use ShareThis. Please set it in _config.yml
.