在前几天写过一个使用glide-transformations的方法实现高斯模糊的方法,今天偶然间有发现一个大神写的另一个方法,感觉挺不错的,分享一下:
效果图:
原文链接:点击访问
这使用也很简单,导入依赖,使用模糊方法就行,就这两步搞定
依赖:
compile 'net.qiujuer.genius:blur:2.0.0-beta4'
实现方法有三种,第一个是java实现的,第二个和第三个是调用c语言实现的 ,具体的区别也就是代码执行的耗时操作时间,从图片中可以看出java使用时间远大于c运行的时间。
可以通过改变radius的值来改变模糊度,值越大,模糊度越大,radius<=0时则图片不显示;一般radius的值以20左右为佳!
// JavaBitmap newBitmap = StackBlur.blur(mBitmap, (int) radius, false);// Bitmap JNI NativeBitmap newBitmap = StackBlur.blurNatively(mBitmap, (int) radius, false);// Pixels JNI NativeBitmap newBitmap = StackBlur.blurNativelyPixels(mBitmap, (int) radius, false);
相关下载:点击免费下载源码及apk