项目作者: zzyss86

项目描述 :
一个基于Load-Image库的,HTML5图片批量缩放、上传库。
高级语言: JavaScript
项目地址: git://github.com/zzyss86/Load-Image-Upload.git
创建时间: 2015-05-11T02:28:21Z
项目社区:https://github.com/zzyss86/Load-Image-Upload

开源协议:

下载


Load-Image-Upload(HTML5图片缩放上传)

一个基于Load-Image库的,HTML5图片批量缩放、上传库。

Demo

./file.html

描述

Load-Image-Upload是基于Load-Image库,并包含了Load-Image库。在Load-Image的基础上,给它添加了批量上传功能。Load-Image库主要包括,图片缩放,并可以返回二进制或Base64图片数据;还可以读取图片源数据,修正图片方向信息(iOS拍照上传BUG)。

使用

引入以下脚本,包含了Load-Image所有库,以及批量上传库。

  1. <script src="js/load-image.all.min.js"></script>

或者分别引用所需库:

新增库:

  1. <script src="js/load-image-dataURLtoBlob.js"></script>
  2. <script src="js/load-image-upload.js"></script>

Load-Image的拆分库:

  1. <script src="js/load-image.js"></script>
  2. <script src="js/load-image-ios.js"></script>
  3. <script src="js/load-image-orientation.js"></script>
  4. <script src="js/load-image-meta.js"></script>
  5. <script src="js/load-image-exif.js"></script>
  6. <script src="js/load-image-exif-map.js"></script>

使用

其中upload函数,必须返回一个promise对象,并支持then方法。

  1. <input type="file" name="upfile" id="upfile" multiple="multiple" accept="image/*" capture="camera" />
  1. loadImage.upload({
  2. domid: "upfile",
  3. multiple: true,
  4. before: function(){console.log("before");},
  5. fail: function(failMsg,file){console.log("fail",failMsg,file);},
  6. success: function(result,file){console.log("success",result,file);},
  7. complete: function(){console.log("complete");},
  8. progress: function(total,remainder){console.log("progress",total,remainder);},
  9. uploadAction: upload,
  10. type: 'image/png',
  11. quality: 0.8,
  12. dataType: 'base64',
  13. maxWidth: 400,
  14. maxHeight: 400
  15. });

参数

  • domid: 对象的ID
  • multiple: 是否开启批量上传
  • before: 上传操作开始前回调
  • fail: 单个图片上传失败
  • success: 单个图片上传成功
  • complete: 所有图片上传完成,不一定全部成功
  • progress: 批量上传时,进度
  • uploadAction: 服务器上传处理程序,必须返回promise对象,并支持then方法
  • type: mime-type for thumbnail (‘image/jpeg’ | ‘image/png’)
  • quality: Setting image quality with jpegs
  • dataType: 返回的数据类型:blob | base64
  • maxWidth: 最大的宽
  • maxHeight: 最大的高

其它参数

可同时包含Load-Image库的全部参数。