更新记录

0.0.2(2024-12-20)

  • chore: 更新文档

0.0.1(2024-12-20)

  • init

平台兼容性

Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
HBuilderX 4.36,Android:支持,iOS:支持,HarmonyNext:不确定 × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序 鸿蒙元服务
× × × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
× × × ×

lime-blur 图片高斯模糊

  • 本插件是对图片进行高斯模糊处理

安装

在插件市场导入,引入后(APP)需要自定义基座

代码演示

离屏API方式

在支持离屏canvas的环境通过API的方式调用,APP、WEB、微信小程序、抖音小程序、支付宝小程序

import { gaussianBlur ,GaussianBlurOptions } from '@/uni_modules/lime-blur'

gaussianBlur({
    src: 'https://img11.360buyimg.com/seckillcms/s280x280_jfs/t1/129831/4/33281/106962/63c63065F0d8fa250/da5d88be0508fb55.jpg',
    radius: 5,
    success(url) {
        console.log('处理后的图片', url)
    }
} as GaussianBlurOptions)

非离屏API方式

在非离屏canvas的环境支持通过API可传入canvasid

<canvas id="canvas" canvas-id="canvas" type="2d" :style="{ width: canvasWidth + 'px', height: canvasHeight + 'px'}"></canvas>
import { gaussianBlur ,GaussianBlurOptions } from '@/uni_modules/lime-blur'

const canvasWidth = ref(300)
const canvasHeight = ref(300)

gaussianBlur({
    canvasId: 'canvas',
    component: getCurrentInstance().proxy, // 或this
    src: 'https://img11.360buyimg.com/seckillcms/s280x280_jfs/t1/129831/4/33281/106962/63c63065F0d8fa250/da5d88be0508fb55.jpg',
    radius: 5,
    onSize(width:number, height:number) {
        // 监听图片的尺寸,设置canvas尺寸
        canvasWidth.value = width
        canvasHeight.value = height
    },
    success(url) {
        console.log('处理后的图片', url)
    }
} as GaussianBlurOptions)

组件方式

<image class="image" :src="path" v-if="path" mode="widthFix"></image>
<slider :value="radius" @change="sliderChange" :step="5" :max="100" :min="0" />
<l-blur :radius="radius" gaussian @success="success" :src="src"></l-blur>
const src = '/static/mv2.jpg';
const path = ref('')

const success = (url: string) => {
    console.log('url', url)
    path.value = url
}

const sliderChange = (e: UniSliderChangeEvent) => {
    radius.value = e.detail.value

    // gaussianBlur({
    //  src: 'https://img11.360buyimg.com/seckillcms/s280x280_jfs/t1/129831/4/33281/106962/63c63065F0d8fa250/da5d88be0508fb55.jpg',
    //  radius: 5,
    //  success(url) {
    //      path.value = url
    //  }
    // } as GaussianBlurOptions)
}

Options

参数 说明 类型 默认值
src 图片地址,网络,本地 string -
radius 模糊半径,越大越糊 number 0
gaussian 是否使用高斯模糊,false为堆栈模糊,只对非离屏canvas生效 boolean -true-
canvasId canvas 元素的 id 属性 string -
component 组件或页面实例,限定在什么范围内查找id string -
success 生效后触发的事件 (file: string) -
fail 失败后触发的事件 (err: any) -
onSize 图片加载后触发的事件 (width: number, height: number) -

隐私、权限声明

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

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

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

暂无用户评论。

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