# Cropper 图片裁剪
3.4.85
图片裁剪组件,支持手势操作、旋转、缩放、裁剪等功能,适用于头像裁剪等场景。
# 基本使用
通过ref
获取组件实例,调用chooseImage
方法选择图片进行裁剪。
# 头像裁剪模式
设置固定裁剪区域大小,适用于头像裁剪等场景。
<template>
<view>
<up-cropper
ref="avatarCropperRef"
:canChangeSize="false"
areaWidth="300rpx"
areaHeight="300rpx"
exportWidth="260rpx"
exportHeight="260rpx"
@confirm="onAvatarConfirm"
>
<view class="avatar-wrapper">
<up-avatar :src="avatarImage" size="120px"></up-avatar>
</view>
</up-cropper>
</view>
</template>
<script>
export default {
data() {
return {
avatarImage: ''
}
},
methods: {
onAvatarConfirm(rsp) {
this.avatarImage = rsp.path
}
}
}
</script>
# 可变裁剪区域
允许用户调整裁剪区域大小,适用于需要自定义裁剪区域的场景。
<template>
<view>
<view class="image-wrapper" @click="chooseCustomImage">
<up-image :src="customImage" height="160px"></up-image>
</view>
<up-cropper
ref="customCropperRef"
@confirm="onCustomConfirm"
/>
</view>
</template>
<script>
export default {
data() {
return {
customImage: ''
}
},
methods: {
chooseCustomImage() {
this.$refs.customCropperRef.chooseImage(0, {
canChangeSize: true,
areaWidth: "300rpx",
areaHeight: "180rpx",
exportWidth: '260rpx',
exportHeight: '160rpx'
})
},
onCustomConfirm(rsp) {
this.customImage = rsp.path
}
}
}
</script>
# Props
参数 | 说明 | 类型 | 默认值 | 可选值 |
---|---|---|---|---|
canChangeSize | 是否允许调整裁剪区域大小 | boolean | false | true/false |
areaWidth | 裁剪区域宽度 | string | 300rpx | - |
areaHeight | 裁剪区域高度 | string | 300rpx | - |
exportWidth | 导出图片宽度 | string | 260rpx | - |
exportHeight | 导出图片高度 | string | 260rpx | - |
minScale | 最小缩放比例 | number | 0.3 | - |
maxScale | 最大缩放比例 | number | 4 | - |
canScale | 是否允许缩放 | boolean | true | true/false |
canRotate | 是否允许旋转 | boolean | true | true/false |
quality | 图片质量 | number | 0.9 | 0-1 |
noTab | 是否隐藏底部操作栏 | boolean | true | true/false |
# Events
事件名 | 说明 | 回调参数 |
---|---|---|
confirm | 裁剪完成时触发 | { avatar, path, index, data } |
avtinit | 组件初始化完成时触发 | - |
# Slots
名称 | 说明 |
---|---|
default | 触发裁剪的元素,点击该插槽内容时会打开裁剪界面 |
# 方法
方法名 | 说明 | 参数 |
---|---|---|
chooseImage | 打开图片选择器并开始裁剪 | (index, params, data) index: 索引标识 params: 配置参数对象 data: 自定义数据 |
close | 关闭裁剪界面 | - |
rotate | 旋转图片 | - |
preview | 预览裁剪结果 | - |
# 注意事项
- 使用[chooseImage]方法时,可以通过第二个参数传入配置项来临时改变裁剪区域大小等属性
- 裁剪完成后会返回临时文件路径,可用于上传或展示
- 支持手势操作:单指拖动图片,双指缩放图片
- 可通过
canChangeSize
属性控制是否允许调整裁剪区域大小 - 在H5平台可能需要处理跨域图片问题
← Barcode 条形码 Color 色彩 →