一行代码搞定高斯模糊
1.之前写过一篇图片设置高斯模糊的文章,鉴于没有在GitHub上找到合适的库,自己就拷贝百度代码做了个小的工具类,今天又花功夫对这个工具类进行了扩充,重载了BoxBlurFilter()方法,使用者可以通过资源文件图片、bitmap、drawable、甚至是直接通过网络图片(已做异步处理,无需再开子线程,直接给个对应的网址就完事)来进行设置。如果觉得用的还好的话,可以去GitHub仓库上给我点个Star,如果遇到问题,或者bug,请底下回复留言
2.下边来说一说用法
To get a Git project into your build:
Step 1. Add the JitPack repository to your build file
Add it in your root build.gradle at the end of repositories:
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
Step 2. Add the dependency
dependencies {
implementation 'com.github.zb-tjw:BlurImageView:2.0'
}
To get a Git project into your build:
Step 1. Add the JitPack repository to your build file
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
Step 2. Add the dependency
<dependency>
<groupId>com.github.zb-tjw</groupId>
<artifactId>BlurImageView</artifactId>
<version>2.0</version>
</dependency>
3.方法调用:
- 如果你的参数是bitmap:
image.setBackground(BoxBlurFilter(bmp));
- 如果你的参数是drawable:
image.setBackground(BoxBlurFilter(drawable));
- 如果你的参数是资源文件下的某张图片:
image.setBackground(BoxBlurFilter(MainActivity.this,R.mipmap.zb_tjw));
- 如果你的参数是一个网络图片地址:
private String url = "https://img-blog.csdnimg.cn/.........";
AsyncloadImage asyncloadImage = new AsyncloadImage();
asyncloadImage.execute(url,image1);
无需再自己开子线程,已做异步处理 - 如果你想改高斯模糊的清晰度:
BlurImageView.HRADIUS = 1;
BlurImageView.ITERATIONS= 1;
BlurImageView.VRADIUS = 1;
数值越小越清晰 4.欢迎点赞和评论,有问题也可一起交流:GitHub仓库地址