更新记录

1.1.0(2026-09-29)

修改说明

1.0.9(2026-09-29)

  • 修复裁剪默认剪切框不居中:App 端 image @load 返回的 e.detail.width/height 是原图像素尺寸,直接当渲染坐标导致框偏移到图片外;改为以裁剪舞台容器 boundingClientRect 的真实渲染宽高作为显示坐标系,默认框居中、可正常拖拽,输出仍按原图像素 1:1 换算

平台兼容性

uni-app(3.8.4)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
√ √ - - √ - √ √ √
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
- - - - - - - - - - - -

图片全能处理工具 Pro(mj-image-toolkit-pro)

纯 JS 像素级图片处理组件,Android / iOS / 鸿蒙三端通用,不依赖 canvas 输出,处理结果尺寸精确可控。

配套插件(三端互通跳转)

插件 适用平台 插件页
mj-image-toolkit Web / H5 / 浏览器 打开插件页
mj-image-toolkit-pro App(Android / iOS / 鸿蒙) 打开插件页
mj-image-toolkit-mp 小程序(微信 / 支付宝 / 抖音 / 百度 / 快手 / QQ) 打开插件页

三个插件功能一致,分别适配 Web / App / 小程序,按运行平台选用,点击插件名即可互相跳转。

功能

功能 说明
压缩 按质量百分比压缩;可指定最大宽度(0 = 保持原图尺寸);JPG / PNG 输出
裁剪 按输入宽高从左上角裁剪;支持 1:1 / 3:4 / 4:3 / 16:9 / 9:16 快捷比例
九宫格 切九宫格:1 张图切 3×3 共 9 张(9 张拼回 = 原图);拼九宫格:1-9 张图合成 3×3 网格
圆角 圆角半径 0-50%(50% 为胶囊形),输出透明 PNG
滤镜 灰度 / 怀旧 / 反色 / 黑白 / 暖色 / 冷色 / 模糊 / 锐化 / 浮雕
拼图 横向 / 纵向排列,可设置列数(行数)、间距、背景色
文字水印 自定义文字、字号、颜色、透明度、九宫格位置、旋转、平铺
图片水印 选择 Logo 图片,自定义大小、透明度、位置

技术特点

  • 纯 JS 像素处理:内置 PNG(UPNG)与 JPEG(jpeg-js)编解码器,图片解码 → 像素运算 → 重新编码,全程不经过 canvas 输出
  • 尺寸精确:输出宽高由像素数组决定,与屏幕像素密度 / canvas 渲染尺寸完全无关,杜绝"压缩变正方形"等问题
  • 三端通用:Android / iOS / 鸿蒙 App 均为 JS 引擎,同一份代码即可运行
  • 本地处理:全部处理在设备本地完成,无任何网络请求,不采集任何数据

使用方式

1. 安装

将 uni_modules/mj-image-toolkit-pro 目录复制到项目的 uni_modules 目录下(或使用 HBuilderX 插件市场一键导入)。

2. 引入组件

在 pages.json 的对应页面 easycom 规则自动生效(uni_modules 组件无需手动注册),页面中使用:

<template>
  <view>
    <mj-image-toolkit-pro />
  </view>
</template>

3. 运行环境

  • HBuilderX 4.x 及以上
  • uni-app vue3 项目
  • App 端(Android / iOS / 鸿蒙):本地像素处理,无需配置原生环境

注意事项

  • 本组件面向 App 三端;Web / 小程序端请使用配套插件 mj-image-toolkit(web 版)
  • 文字水印在 App 端使用离屏画布渲染文字位图后读取像素,仅用于文字栅格化,主图处理与输出仍为纯像素方案
  • 处理过程在设备本地完成,无网络请求、不采集任何数据

更新日志

  • v1.0.0:首个版本,支持全部 8 项功能

隐私、权限声明

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

保存处理结果到系统相册需相册写入权限(Android/iOS/鸿蒙三端均需)

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

插件不采集任何数据、无任何网络请求,图片仅在用户设备本地内存中处理,不经过服务器

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

无

暂无用户评论。