【问题标题】:Crop or resize images before upload to the server as raw image binary data (png or jpeg) [closed]在作为原始图像二进制数据(png或jpeg)上传到服务器之前裁剪或调整图像大小[关闭]
【发布时间】:2015-04-16 10:37:58
【问题描述】:

我正在尝试在浏览器中裁剪图像并将它们作为 原始图像二进制数据 上传到服务器(格式应为 "image /jpeg""image/png")。我尝试了许多客户端裁剪和上传方法,它们都使用 html 5 函数 canvas.toDataURL() 在 "data:image/png;base64" 格式,上传到网络服务器,然后在服务器端转换成原始图像二进制数据

问题是我必须将裁剪的数据上传到像 AWS S3 这样的静态文件服务器中,除了接受文件上传之外,它不能执行转换代码。因此,我需要将裁剪后的图像上传为 普通图像格式,例如“image/png”。如果可以做到这一点,我可以使用浏览器将图像直接裁剪并上传到文件服务器(S3),我不需要中间服务器来转换图像数据并将其传输到文件服务器(S3)。

【问题讨论】:

  • 我编辑了问题以使其更清楚。你们现在明白了吗?
  • 这个问题还不清楚吗?各位大佬能指出一下你的困惑吗?为什么有人锁定我的问题,然后再也不查看或解锁?

标签: javascript image crop


【解决方案1】:

您可以尝试Crop Upload,这是一个基于 HTML5 的 javascript 插件,它可以在 canvas 元素中裁剪图像,将 canvas 转换为 blob 并通过 AJAX 将其作为 png 或 jpeg 上传到服务器。它根本不需要任何服务器端代码,但它只能在那些支持 HTML 5 的浏览器中运行。

编辑:插件的链接已过期。

【讨论】:

  • 谢谢。我去看看。
  • 确实有效。谢谢。
  • 这个库只提供了一个函数调用来裁剪和上传图像,这很棒。
  • 作物上传网址已过期,能否更新一下?
  • @Avoen 你能提供新的网址吗?
【解决方案2】:

看看Filepicker.io,它提供了一个基于 JavaScript 的文件选择器,包括裁剪/调整大小功能,并支持上传到 S3 和其他云存储服务,而无需服务器端代码。请注意,某些功能需要付费计划。

【讨论】:

  • 谢谢。看起来不错,但对我来说太重了。
  • 你可能会找到一些基于 Flash 的东西,有点像 pixlr 的在线照片编辑器
  • 这是 pixlr 网站上关于如何将他们的在线照片编辑器与您的网站集成的文章:support.pixlr.com/hc/en-us/articles/…
猜你喜欢
  • 1970-01-01
  • 2011-02-13
  • 2015-02-22
  • 1970-01-01
  • 1970-01-01
  • 2016-11-29
  • 1970-01-01
  • 2011-12-31
相关资源
最近更新 更多