http://y.qq.com/m/demo/ctools/clip.html
https://github.com/xingqiao/CLIP/
-
支持解析图片、Canvas、文件、图片链接
-
支持裁剪成正方形、圆形、自定义矩形
-
支持缩放操作
-
支持保存成PNG/JPG
不依赖其他第三方库
<script src="qmv.js"></script>
var clip = new CLIP({
shape: CLIP.SHAPE.SQUARE,
onsave: function (result) {
console.log(result);
},
onerror: function (e) {
console.log("error", e);
}
});
clip.load("./test.jpg").show();
参数 | 类型 | 默认值 | 描述 |
---|---|---|---|
background | String | null | 裁剪出图片的背景色,默认为透明,保存成jpg时默认为白色 |
shape | String | "square" | 裁剪形状,值在 CLIP.SHAPE 中定义,默认是正方形 |
rectRatio | Number | - | 矩形裁剪形状宽高比,当 type=CLIP.SHAPE.RECT 时有效,值为 宽:高,默认为 1,相当于正方形 |
type | String | "image/png" | 保存的图片类型,默认是 image/png,值在 CLIP.TYPE 中定义 |
quality | Number | - | 保存的jpg图片质量,type=image/jpeg 时有效,有效值0~1 |
width | Number | - | 保存图片的宽度,不传该值时根据height的值等比缩放 |
height | Number | - | 保存图片的高度,不传该值时根据width的值等比缩放 |
属性名 | 类型 | 值 | 描述 |
---|---|---|---|
result | Object | - | 返回base64链接形式的裁剪结果 |
width | Number | - | 获取或设置保存图片的宽度设置 |
height | Number | - | 获取或设置保存图片的高度设置 |
方法名 | 描述 |
---|---|
load | 加载图片 |
save | 保存裁剪结果 |
show | 打开裁剪弹窗 |
hide | 关闭裁剪弹窗 |
reset | 重置图片缩放状态 |
clear | 清空裁剪板 |
事件名 | 描述 |
---|---|
loading | 事件在图片开始加载时触发 |
load | 事件在图片加载完成时触发 |
show | 事件在打开裁剪弹窗时触发 |
hide | 事件在关闭裁剪弹窗时触发 |
save | 事件在裁剪完成时触发 |
error | 事件在执行出错时触发 |
常量 | 值 | 描述 |
---|---|---|
CLIP.ERROR.LOAD_IMG_FAIL | 1 | 加载图片失败 |
CLIP.ERROR.SAVE_IMG_FAIL | 2 | 保存图片失败 |
CLIP.ERROR.OPEN_FILE_FAIL | 3 | 读取文件失败 |
常量 | 值 | 描述 |
---|---|---|
CLIP.STATE.LOADING | 1 | 加载中 |
CLIP.STATE.LOADED | 2 | 加载完成 |
常量 | 值 | 描述 |
---|---|---|
CLIP.SHAPE.CIRCLE | "circle" | 圆形 |
CLIP.SHAPE.SQUARE | "square" | 正方形 |
CLIP.SHAPE.RECT | "rect" | 正方形 |
常量 | 值 | 描述 |
---|---|---|
CLIP.TYPE.PNG | "image/png" | png |
CLIP.TYPE.JPG | "image/jpeg" | jpg |