一款支持手势的裁图插件插件
由于目前网上很难找到一款支持手势的裁图插件,因此自己动手写了一个。为了快速开发,依赖了很多其他的开源插件。不过目前仅解决需求即可。
[jquery.transit.js] 插件 (v1.4 中已经移除了对该插件的依赖)
[iscroll-zoom.js] 插件(由于原插件的zoom扩展存在几个bug,所以建议使用demo中提供的iscroll-zoom.js文件,本人已经将这些bug修复)
[hammer.js] 插件
[lrz.all.bundle.js] 插件
在移动设备上双指捏合为缩放,双指旋转可根据旋转方向每次旋转90度
在PC设备上鼠标滚轮为缩放,每次双击则顺时针旋转90度
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | < div id = "clipArea" ></ div > < input type = "file" id = "file" > < button id = "clipBtn" >截取</ button > < div id = "view" ></ div > < script src = "js/jquery-2.1.3.min.js" ></ script > < script src = "js/hammer.min.js" ></ script > < script src = "js/iscroll-zoom.min.js" ></ script > < script src = "js/lrz.all.bundle.js" ></ script > < script src = "js/jquery.photoClip.min.js" ></ script > < script > var clipArea = new bjj.PhotoClip("#clipArea", { size: [260, 260], // 截取框的宽和高组成的数组。默认值为[260,260] outputSize: [640, 640], // 输出图像的宽和高组成的数组。默认值为[0,0],表示输出图像原始大小 //outputType: "jpg", // 指定输出图片的类型,可选 "jpg" 和 "png" 两种种类型,默认为 "jpg" file: "#file", // 上传图片的< input type = "file" >控件的选择器或者DOM对象 view: "#view", // 显示截取后图像的容器的选择器或者DOM对象 ok: "#clipBtn", // 确认截图按钮的选择器或者DOM对象 loadStart: function(file) {}, // 开始加载的回调函数。this指向 fileReader 对象,并将正在加载的 file 对象作为参数传入 loadComplete: function(src) {}, // 加载完成的回调函数。this指向图片对象,并将图片地址作为参数传入 loadError: function(event) {}, // 加载失败的回调函数。this指向 fileReader 对象,并将错误事件的 event 对象作为参数传入 clipFinish: function(dataURL) {}, // 裁剪完成的回调函数。this指向图片对象,会将裁剪出的图像数据DataURL作为参数传入 }); </ script > |
Destroy
1 | clipArea.destroy(); |
特别申明:
本站所有资源都是由网友投稿发布,或转载各大下载站,请自行检测软件的完整性!
本站所有资源仅供学习与参考,请勿用于商业用途,否则产生的一切后果将由您自己承担!
如有侵权请联系我们删除下架,联系方式:lei1294551502@163.com