到目前为止,我们已将简单的图像上传到node.js服务器,然后再上传到S3存储桶。我们只有类型和文件大小检查。我需要在客户端实现裁剪。经过大量的研究和阅读,似乎这是选择:
想法如下: 1.用户将未经处理的图像发送到服务器,然后将其上传到Amazon S3 2.图像上传到S3后(可能将临时图像保存到服务器),其链接将被发送到用户端,Jcrop将在该图像上激活 3.用户将裁剪图像并将裁剪信息发送到服务器,服务器将依次使用该信息并将其提供给imagemagick 4.图像magick将调整图像大小 5.图像将上传到S3,用户将收到另一个带有调整大小图像的链接
我在这里有几个问题。我确信之前有人做过,我很感激你的经历。
一个。这个策略好吗?我在服务器,客户端和S3之间路由。如果有改进的地方请说出来:) B.我会将裁剪数据发送到imagemagick。而Image magick将在同一张图片上执行裁剪。
这有点好吗?要检查的任何示例代码?
答案 0 :(得分:0)
如果您还需要支持旧浏览器,那么您提出的建议是一个很好的解决方案。否则,它可能是多余的。
如果您不介意排除旧浏览器(包括IE 8及更低版本),使用HTML5和canvas元素,您可以直接调整大小并在客户端裁剪图像。
有很多相关主题,例如:Cropping images in the browser BEFORE the upload