File upload 精细上传器:上传前调整大文件大小?

File upload 精细上传器:上传前调整大文件大小?,file-upload,fine-uploader,File Upload,Fine Uploader,我正在与其他各种选择进行比较,特别是 我通常更喜欢Fine Uploader方法,因为它比依赖于引导和JQuery UI的JQuery文件上传器更轻量级 但是,能够调整图像大小很重要:例如,用户可能会从相机中选择一个大文件,而这个文件可能非常大-上传全分辨率照片可能需要很长时间。JQuery文件上传doe这个 此外,我们没有太多的使用非常高分辨率的文件 如果可能的话(我知道有些浏览器可能不支持),我希望能够调整图像的大小 这是可能的吗?Fine Uploader目前没有任何本机支持的图像处理功能

我正在与其他各种选择进行比较,特别是

我通常更喜欢Fine Uploader方法,因为它比依赖于引导和JQuery UI的JQuery文件上传器更轻量级

但是,能够调整图像大小很重要:例如,用户可能会从相机中选择一个大文件,而这个文件可能非常大-上传全分辨率照片可能需要很长时间。JQuery文件上传doe这个

此外,我们没有太多的使用非常高分辨率的文件

如果可能的话(我知道有些浏览器可能不支持),我希望能够调整图像的大小


这是可能的吗?

Fine Uploader目前没有任何本机支持的图像处理功能。这是我们的待办事项列表中的一个功能,但是我们没有很多用户告诉我们他们对此感兴趣。这就是为什么这种特性还没有在本地实现的原因之一。有一个例子,它标志着对Fine Uploader的本机图像编辑支持的开始。暂定为4.0版

但是,您当然可以使用
FileReader
Canvas
来调整图像的大小。然后,您可以通过
addFiles
API方法将此调整大小的图像作为
Blob
提交给Fine Uploader。此时,文件已提交,Fine Uploader已准备好上载该项目

基本上,在Fine Uploader本机支持图像处理之前,您将遵循以下步骤来处理此特定场景:

  • 提供您自己的文件输入元素,或使用Fine Uploader的文件/文件夹拖放支持来获得用户选择的某些文件的句柄
  • 使用
    FileReader
    读取图像内容
  • FileReader
    将为您提供图像的URL,并将其分配给
    img
    元素的
    src
    属性
  • img
    绘制到
    canvas
    元素上。这就是调整大小的地方
  • canvas
    元素(
    canvas.toDataURL(…)
    )中获取已调整大小的图像的URL
  • 将URL转换为
    Blob
  • Blob
    传递给Fine Uploader的
    addFiles
    API方法
  • 其目的是通过向Fine Uploader添加本机图像处理支持,为将来像您这样的集成商解决大部分(如果不是全部的话)问题


    希望这有帮助。

    谢谢@Ray!我知道画布的技巧,我会像你提到的那样尝试整合它。4.0到期时有什么想法吗?@Naller Fine Uploader刚刚完成了所有权转让。此时,尘埃仍在沉降。我们将检查所有预定的功能,并重新确定它们的优先级。将为该项目分配额外的资源,以加快进度。一旦我们组建了团队,将提供更多关于计划里程碑的更新。现在,当我们为优秀的上传者雇佣/分配更多的资源时,我正在继续我以前的工作。请随意查看并添加/评论项目。@Ray Nicholus您有任何示例此功能现在已在开发分支中完成,并且是即将发布的4.4版本的计划部分。阅读更多信息。