更新记录

1.1.2(2025-03-13) 下载此版本

增加保存图片时 quality:1 图片的质量为最高

1.1.1(2025-03-07) 下载此版本

改进保存后图片比例跟原始图片对不上的问题

1.1.0(2025-03-06) 下载此版本

新增完成编辑时是否获取整个canvas为图片

查看更多

平台兼容性

Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
HBuilderX 3.1.0 app-vue × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序 鸿蒙元服务
× × × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari

chj-imgEdit 图片编辑器

平台兼容

H5 微信小程序 支付宝小程序 百度小程序 头条小程序 QQ 小程序 App
未测 未测 未测 未测

代码演示

基本用法

<button @click="onClick" >开启图片编辑</button>
<chj-imgEdit ref="chjImgEdit" @confirm="confirm" @cancel="cancel" />

Vue/Nvue

export default {
    data(){
        return {

        }
    },
    methods:{
        onClick(){
            uni.chooseImage({
                count: 1,
                success: (res)=> {
                    this.$refs.chjImgEdit.open({
                        // 底图路径
                        path:res.tempFilePaths[0],
                        // 取消是否有弹窗提示
                        isCancelToast: true,
                        // 取消弹窗提示内容
                        cancelText:"确定真的退出吗?",
                        // 确定是否有弹窗提示
                        isConfirmToast: true,
                        // 确定弹窗提示内容
                        confirmText:"决定好了吗?",
                        // 设置图标
                        iconPath:{
                            reset:'/static/repeat-02.png'
                        },
                        // 设置涂鸦图标(根据下标匹配)
                        iconPathGraffiti:{
                            0:'/static/iconPathGraffiti-1.png'
                        }
                    });
                }
            });
        },
        confirm(path){
            console.log('确定');
            uni.previewImage({
                urls: [path],
            });
        },
        cancel(){
            console.log('取消');
        }
    }
}

API

Props

参数 说明 类型 默认值
activeColor 激活的颜色 string #FFCC33
isAllCanvas 确定时是否保存整个画布(设为false只保存背景图片部分) Boolean true

事件 Events

事件名 说明 回调参数
confirm 确定 (回调参数为编辑完成的图片路径) path
cancel 取消
getLineLength 获取横线的长度(单位px) length
getRectPosition 获取矩行的位置({x1,y1,x2,y2}) obj

使用说明

打开图片编辑器,需要 chj-imgEdit 中声明 ref 属性

<chj-imgEdit ref="chjImgEdit" @confirm="confirm" @cancel="cancel" />
this.$refs.chjImgEdit.open(options);

如果使用vue3语法,ref获取的组件下没有open方法可以使用以下方法解决。

import { getCurrentInstance } from 'vue'; 
const { proxy } = getCurrentInstance(); 
proxy.$refs.chjImgEdit.open();

options 参数说明

参数 说明 类型 默认值
path 底图路径 string -
isCancelToast 取消是否有弹窗提示 boolean true
cancelText 取消弹窗提示内容 string 内容未保存,确定退出吗?
isConfirmToast 确定是否有弹窗提示 boolean true
confirmText 确定弹窗提示内容 string 确定完成编辑吗?
iconPath 设置图标 object -
iconPathGraffiti 设置涂鸦图标 object -

iconPath 参数说明

参数 说明 类型 默认值
positionReset 复位(放大倍率和偏移量重置) string -
goForward_active 前进可点击状态 string -
goForward_inactive 前进不可点击状态 string -
retreat_active 后退可点击状态 string -
retreat_inactive 后退不可点击状态 string -
reset 重置 string -
close 关闭 string -
confirm 确定 string -
pen string -
rubber 橡皮 string -

iconPathGraffiti 参数说明

按下标设置图片路径

iconPathGraffiti:{
    '0':'/static/iconPathGraffiti_1.png',
}
参数 说明 类型 默认值
0 涂鸦 string -
1 矩形 string -
2 圆形 string -
3 横线 string -
4 箭头 string -
5 文本 string -
6 裁剪 string -
7 翻转 string -

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问