php图片添加高斯模糊的方法是什么
发表于:2025-02-07 作者:千家信息网编辑
千家信息网最后更新 2025年02月07日,这篇文章主要介绍"php图片添加高斯模糊的方法是什么",在日常操作中,相信很多人在php图片添加高斯模糊的方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"php
千家信息网最后更新 2025年02月07日php图片添加高斯模糊的方法是什么
这篇文章主要介绍"php图片添加高斯模糊的方法是什么",在日常操作中,相信很多人在php图片添加高斯模糊的方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"php图片添加高斯模糊的方法是什么"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
private static Bitmap activityShot(Activity activity) { /*获取windows中最顶层的view*/ View view = activity.getWindow().getDecorView(); //允许当前窗口保存缓存信息 view.setDrawingCacheEnabled(true); view.buildDrawingCache(true); // //获取状态栏高度// Rect rect = new Rect();// view.getWindowVisibleDisplayFrame(rect);// int statusBarHeight = rect.top;//// WindowManager windowManager = activity.getWindowManager();//// //获取屏幕宽和高// DisplayMetrics outMetrics = new DisplayMetrics();// windowManager.getDefaultDisplay().getMetrics(outMetrics);// int width = outMetrics.widthPixels;// int height = outMetrics.heightPixels;//// //去掉状态栏// Bitmap shotBitmap = Bitmap.createBitmap(view.getDrawingCache(), 0, statusBarHeight, width,// height - statusBarHeight); //压缩系数2,4,8 float scaleFactor = 8; Bitmap scaledBitmap = Bitmap.createBitmap( (int) (view.getMeasuredWidth() / scaleFactor), (int) (view.getMeasuredHeight() / scaleFactor), Bitmap.Config.ARGB_8888); Canvas canvas = new Canvas(scaledBitmap); canvas.translate(-view.getLeft() / scaleFactor, -view.getTop() / scaleFactor); canvas.scale(1 / scaleFactor, 1 / scaleFactor); Paint paint = new Paint(); paint.setFlags(Paint.FILTER_BITMAP_FLAG); // 截屏view.getDrawingCache() canvas.drawBitmap(view.getDrawingCache(), 0, 0, paint); //销毁缓存信息 view.destroyDrawingCache(); view.setDrawingCacheEnabled(false); return scaledBitmap; }
将return的scaleBitmap放入下面的方法:
private static Bitmap rsBlur(Context context, Bitmap source, int radius) { Bitmap inputBmp = source; //(1) //初始化一个RenderScript Context RenderScript renderScript = RenderScript.create(context); // Allocate memory for Renderscript to work with //(2) //创建输入输出的allocation final Allocation input = Allocation.createFromBitmap(renderScript, inputBmp); final Allocation output = Allocation.createTyped(renderScript, input.getType()); //(3) // Load up an instance of the specific script that we want to use. //创建ScriptIntrinsic ScriptIntrinsicBlur scriptIntrinsicBlur = ScriptIntrinsicBlur.create(renderScript, Element.U8_4(renderScript)); //(4) //填充数据 scriptIntrinsicBlur.setInput(input); //(5) // Set the blur radius //设置模糊半径 scriptIntrinsicBlur.setRadius(radius); //(6) // Start the ScriptIntrinisicBlur //启动内核 scriptIntrinsicBlur.forEach(output); //(7) // Copy the output to the blurred bitmap //copy数据 output.copyTo(inputBmp); //(8) //销毁renderScript renderScript.destroy(); return inputBmp; }
不用的时候要remove掉:
public void removeMask(){ if (group != null){ for(int i=0;i到此,关于"php图片添加高斯模糊的方法是什么"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
方法
图片
高斯
学习
信息
数据
更多
状态
缓存
帮助
实用
接下来
不用
内核
半径
屏幕
文章
时候
理论
知识
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
服务器资源占有率
广东数字化城管软件开发电话
网络安全法是治安管理法吗
网络安全稿子800
电子网络技术的基础是
怎么看一个网段里面的所有服务器
数据库一次插入多条数据
网络安全手抄报高中水彩画
ad软件开发环境简介
徐州idc服务器供货厂
乐山软件开发培训找柚子科技
传统软件开发方法的实质
缺管理员的服务器
山东地区软件开发公司
服务器地址端口代码
南京蜂泰互联网科技
tp5模型连接数据库
杭州青鸾网络技术有限公司电话
网络安全是一个系统的安全
网络安全新服务白皮书
全栈软件开发工程师招聘
数据库的索引
苹果手机应用软件开发
北京帕美智软件开发有限公司
服务器主板没有声卡
js删除所有缓存数据库
为啥服务器贵
hby火币源软件开发
网络安全物理安全有什么特点
数据库增量更新同步技术