android 图片虚化代码,Android模糊图片技术
RenderScript是android的计算图形框架。android的动态墙纸就是用了这一技术。本文学习一下把一张图片进行模糊显示处理。
集成Renderscript Support支持库
使用Gradle配置
在项目的build.gradle添加以下代码
[代码]xml代码:1
2
3
4
5
6android {
defaultConfig {
renderscriptTargetApi 19
renderscriptSupportModeEnabled true
}
}
添加成功后,会发现android.support.v8.renderscript.*的类可以使用
使用RenderScript模糊图片
以下是模糊的核心代码
[代码]java代码:01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23public class BlurBuilder {
private static final float BITMAP_SCALE = 0.4f;
private static final float BLUR_RADIUS = 7.5f;
public static Bitmap blur(Context context, Bitmap image) {
int width = Math.round(image.getWidth() * BITMAP_SCALE);
int height = Math.round(image.getHeight() * BITMAP_SCALE);
Bitmap inputBitmap = Bitmap.createScaledBitmap(image, width, height, false);
Bitmap outputBitmap = Bitmap.createBitmap(inputBitmap);
RenderScript rs = RenderScript.create(context);
ScriptIntrinsicBlur theIntrinsic = ScriptIntrinsicBlur.create(rs, Element.U8_4(rs));
Allocation tmpIn = Allocation.createFromBitmap(rs, inputBitmap);
Allocation tmpOut = Allocation.createFromBitmap(rs, outputBitmap);
theIntrinsic.setRadius(BLUR_RADIUS);
theIntrinsic.setInput(tmpIn);
theIntrinsic.forEach(tmpOut);
tmpOut.copyTo(outputBitmap);
return outputBitmap;
}
}
只需要适当地调整BITMAP_SCALE和BLUR_RADIUS这两个参数就可以了。
注意一点的是。导入的包一定要是android.support.v8.renderscript.*,不然就只能在Api 17(Android 4.3)的版本上使用。
如果要对一张Bitmap图片进行模糊,只需要调用上面的blur方法,生成一个新的Bitmap就可以了。
[代码]java代码:1
2Bitmap blurredBitmap = BlurBuilder.blur( getActivity(), originalBitmap );
view.setBackgroundDrawable( new BitmapDrawable( getResources(), blurredBitmap ) );
这是原图
压缩后的图片
android 图片虚化代码,Android模糊图片技术相关推荐
- python 图片数据清洗,图片去重,去掉模糊图片,去掉结构性相似的图片
1.python代码去掉完全相同的图片, 重复的图片移动到另一文件夹保存 import shutil import numpy as np from PIL import Image import ...
- android 图片切割代码,Android用clip剪切图像资源
使用clip剪切图像资源可以做进度条,图像慢慢展开的效果,他使用以下几个属性来控制效果: android:drawable:指定要剪切的原图像. android:clipOrientation:截取的 ...
- android取图片颜色代码,Android Palette 提取图片的主色调
博主声明: 转载请在开头附加本文链接及作者信息,并标记为转载.本文由博主 威威喵 原创,请多支持与指教. 本文首发于此 博主:威威喵 | 博客主页:https://blog.csdn.net/smil ...
- android studio证件照代码,Android 修图(换证件照背景,污点修复)
背景 前段时间的一个周末,一个女生让我帮她换一下他的证件照背景,我又没带电脑.我又不好意思拒接,怎么办呢?应用商店下载一个证件照换背景的APP,瞬间换完,我正准备保存时,跳出来一个支付框,如果你要保存 ...
- android 进度条 代码,Android 进度条使用详解及示例代码
在这里,总结一下loading进度条的使用简单总结一下. 一.说起进度条,必须说说条形进度条,经常都会使用到嘛,特别是下载文件进度等等,还有像腾讯QQ安装进度条一样,有个进度总给人良好的用户体验. 先 ...
- android摄像头拍照代码,Android调用摄像头拍照开发教程
现在很多应用中都会要求用户上传一张图片来作为头像,首先我在这接收使用相机拍照和在相册中选择图片.接下来先上效果图: 接下来看代码: 1.布局文件: xmlns:tools="http://s ...
- android 小白点代码,Android实现小圆点显示未读功能
####前言 以前我们实现这个功能都是用 BadgeView.java,大体就是将这个java类复制到自己的项目中,然后在项目中使用,今天讲的也是一款BadgeView,我将其封装称工具类Badget ...
- android qq 分享代码,Android将内容分享到QQ和微信实例代码
具体代码如下所示: package dmpte.sharewechat; import android.annotation.SuppressLint; import android.app.Acti ...
- android相机拍照代码,Android 调用相机拍照,适配到Android 10
今天写的博客是关于Android调用手机相机拍照并显示图片.这是一个很常用的功能,并且这个功能在Android6.0.7.0.10.0等版本上实现都有所不同,需要对Android各个版本进行兼容适配, ...
- android小球移动代码,Android自定义圆形View实现小球跟随手指移动效果
本文实例为大家分享了Android实现小球跟随手指移动效果的具体代码,供大家参考,具体内容如下 一. 需求功能 手指在屏幕上滑动,红色的小球始终跟随手指移动. 实现的思路: 1)自定义View,在on ...
最新文章
- visual studio 自动整理代码
- BroadCastReceiver简介
- 街电与搜电网络营销外包合并,怪兽充电终上市共享充电市场将迎来新变化
- 利用Docker构建开发环境
- TensorFlow + Docker + PyCharm
- 如何调用java的包_jsp如何调用java包
- 解决asp.net(C#)中 DataTime 空值 null为0001-01-01
- Android自定义控件之仿汽车之家下拉刷新
- SpringBoot 信息输出
- opengl2 vtk 编译_编译和使用VTK时值得注意的点(待续)
- Regal灰度发布智能分组引擎
- python求组合数_求组合数的算法_Cppowboy's Blog - SegmentFault 思否
- 在要求或期待别人做到某事的时候,先反思下自己是否值得。就好比我常会期望有很多人会记住我生日是哪天,但......
- 解决内网用户不能正常访问内部WEB服务器问题
- poj3461 Oulipo
- macbook 终端命令怎么使用_Mac终端怎么打开?带你全面了解在macOS中使用终端命令行...
- 中国伺服电机市场现状调查与投资战略分析报告2022-2028年
- EXCEL的去重去除某个字段后全部操作
- JAVA——实现求s=a+aa+aaa+aaaa+aa...a的值
- Vue通过render渲染$Notice
热门文章
- 微信小程序wxacode.getUnlimited 生成圆形二维码
- 实验6 - 家中的电视
- 公网Kamailio 代理 freeswitch 和做 sbc
- c语言打印星号对勾,Intellij常用快捷键记录
- Es6模板字符串条件判断
- 解决0x00000FD:Stack overflow(参数:0x00000000,0x002F2000)栈溢出问题
- 油田智能化远程监控系统_油气田长停井图像远程传输监控系统
- hive表 合并字段_hive sql常用技巧
- 推荐16个高清图片网站,可做网站背景
- c语言中双引号是什么作用,C语言中单引号与双引号的区别