【发布时间】:2015-10-30 17:27:00
【问题描述】:
构建上传头像系统。
寻找一个允许方形图像并允许用户选择大图像的一小部分(意味着需要裁剪)的系统。还可以根据需要根据大小和尺寸进行验证。
客户端裁剪
存在基于 HTML5 画布和本地存储的解决方案,例如 ngImgCrop、Angular Image Crop,但也存在诸如 -
之类的问题- 如果结果过高(超过 1 MB),图像会失真
- 某些旧的(非 html5)浏览器可能不支持
服务器端裁剪
像 Jcrop 这样的解决方案,但工作流程长且耗时/带宽消耗。
- 客户端需要将完整的大文件发送到服务器,即使其大小为 5MB
- 然后从服务器再次下载以进行预览
- 然后显示裁剪 UI 并发送裁剪坐标
- 服务器执行裁剪并创建文件
- 裁剪的图像已下载并显示
什么是最好的方法。告诉我更多的优点和缺点。一个伟大的创业公司应该做什么?目前的行业标准解决方案是什么?为什么?
【问题讨论】:
标签: javascript angularjs image client-server user-experience