本帖最后由 dakk 于 2018-2-1 19:20 编辑
h5图像裁剪(基于canvas)插件Image-Clip
插件描述:支持旋转,预览,裁剪框选择,压缩比例设置等
Image-Clip图像的裁剪压缩 功能包括:canvas绘制图片 裁剪框选择裁剪大小 旋转功能 放大镜(方便旋转) 裁剪功能 缩放、压缩功能(通过参数控制)
使用引入 [JavaScript] 纯文本查看 复制代码 dist/image-clip.css
dist/image-clip.js
全局变量 [JavaScript] 纯文本查看 复制代码 ImageClip
调用方法 [JavaScript] 纯文本查看 复制代码 var cropImage = new ImageClip(options);
cropImage.method()
img对象示例 [JavaScript] 纯文本查看 复制代码 var img = new Image();
img.src = b64;
img.onload = function() {
// 需要在onload中进行操作
new ImageClip(...);
};
options配置 参数 | 参数类 型 | 默认值 | 说明 | | | | | | | | | | | | | | | | | | | | | | | | | | | | 大小提示框的风格,0表示按下时显示,1表示恒显示,-1表示永不显示 | | | | 裁剪压缩时的缩放系数,最终尺寸为:屏幕像素*像素比(手机一般为2)*compressScaleRatio | | | | 在iphone情况下再放大一个系数,以解决可能的模糊问题,最终尺寸为:已计算的最终尺寸*iphoneFixedRatio | | | | 是否采用原图像素,优先级高于上述所有,如果为true,最终尺寸为:原图大小 | | | | 最大宽度,优先级高于上述所有,大于这个宽度的图片会强行缩放成这个宽,小于的按照上面的规则进行缩放,为0时表示不设置 | | | | 强制设置宽度,优先级高于上述所有,最终宽度为:forceWidth,为0时表示不设置 | | | | 同上,但是一般不建议设置,因为很可能会改变宽高比导致拉升,特殊场景下使用 |
注意: APIresetClipRect 重置裁剪框,重新变为最大 [JavaScript] 纯文本查看 复制代码 cropImage.resetClipRect();
clip 裁剪图像,根据当前的裁剪框进行裁剪 [JavaScript] 纯文本查看 复制代码 cropImage.clip();
getClipImgData 获取已裁剪的图像 [JavaScript] 纯文本查看 复制代码 var base64 = cropImage.getClipImgData();
返回说明 参数 | 参数类型 | 说明 | base64 | String | 裁剪后的图像的base64数据 |
rotate 旋转图片 [JavaScript] 纯文本查看 复制代码 cropImage.clip(isClockWise);
参数说明 参数 | 参数类型 | 说明 | isClockWise | Boolean | 是否是顺时针旋转 |
destroy
销毁当前的裁剪对象 如果一个容器需要重新生成裁剪对象,一定要先销毁以前的 [JavaScript] 纯文本查看 复制代码 cropImage.destroy();
|