當前位置:首頁 » 安卓系統 » android模糊圖片處理

android模糊圖片處理

發布時間: 2023-12-29 10:49:34

Ⅰ Android開發中ImageView里的Bitmap很模糊,怎麼解決

目標和容器不一致導致的。
1、設置imageview的scaleType為center,即不隨著控制項的大小而去硬性適配;
2、確保所得bitmap即圖片有預期的大小;
3、設置imageview的寬高為wrap,去適應bitmap的大小。

Ⅱ Android 圖片及文字模糊效果

implementation'com.github.bumptech.glide:glide:4.7.1'

implementation'jp.wasabeef:glide-transformations:4.0.1'

Glide.with(this).load(url)

.apply(RequestOptions.bitmapTransform(new BlurTransformation(5,2)))

.into(civ);

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB){

//View從API Level 11才加入setLayerType方法 //設置View以軟體渲染模式繪圖

    tvPhone.setLayerType(View.LAYER_TYPE_SOFTWARE,null);

}

SpannableString stringBuilder=new SpannableString("文字模糊");

stringBuilder.setSpan(new MaskFilterSpan(new BlurMaskFilter(10f,BlurMaskFilter.Blur.NORMAL)),

0,stringBuilder.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE);

tvPhone.setText(stringBuilder);

最後來張效果圖吧:

Ⅲ 如何實現Android 布局背景模糊化處理

在模仿 IOS 密碼輸入頁面的時候發現其背景有模糊處理,於是了解了一下並記錄下來,以便使用.在Android 中具體實現方法如下

查考 http://www.cnblogs.com/lipeil/p/3997992.html

Java代碼
private void applyBlur() {

// 獲取壁紙管理器
WallpaperManager wallpaperManager = WallpaperManager.getInstance(this.getContext());
// 獲取當前壁紙
Drawable wallpaperDrawable = wallpaperManager.getDrawable();
// 將Drawable,轉成Bitmap
Bitmap bmp = ((BitmapDrawable) wallpaperDrawable).getBitmap();

blur(bmp);
}

下面之所以要進行small 和big的處理,是因為僅僅靠ScriptIntrinsicBlur
來處理模式,不能到達更模式的效果,如果需要加深模式效果就需要先把背景圖片縮小,在處理完之後再放大.這個可以使用Matrix
來實現,而且這樣可以縮短模糊化得時間

Java代碼
@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR1)
private void blur(Bitmap bkg) {
long startMs = System.currentTimeMillis();
float radius = 20;

bkg = small(bkg);
Bitmap bitmap = bkg.(bkg.getConfig(), true);

final RenderScript rs = RenderScript.create(this.getContext());
final Allocation input = Allocation.createFromBitmap(rs, bkg, Allocation.MipmapControl.MIPMAP_NONE,
Allocation.USAGE_SCRIPT);
final Allocation output = Allocation.createTyped(rs, input.getType());
final ScriptIntrinsicBlur script = ScriptIntrinsicBlur.create(rs, Element.U8_4(rs));
script.setRadius(radius);
script.setInput(input);
script.forEach(output);
output.To(bitmap);

bitmap = big(bitmap);
setBackground(new BitmapDrawable(getResources(), bitmap));
rs.destroy();
Log.d("zhangle","blur take away:" + (System.currentTimeMillis() - startMs )+ "ms");
}

private static Bitmap big(Bitmap bitmap) {
Matrix matrix = new Matrix();
matrix.postScale(4f,4f); //長和寬放大縮小的比例
Bitmap resizeBmp = Bitmap.createBitmap(bitmap,0,0,bitmap.getWidth(),bitmap.getHeight(),matrix,true);
return resizeBmp;
}

private static Bitmap small(Bitmap bitmap) {
Matrix matrix = new Matrix();
matrix.postScale(0.25f,0.25f); //長和寬放大縮小的比例
Bitmap resizeBmp = Bitmap.createBitmap(bitmap,0,0,bitmap.getWidth(),bitmap.getHeight(),matrix,true);
return resizeBmp;
}

Ⅳ 在android,怎麼實現activity模糊圖層效果呢

Android裡面:
最普遍的模糊技術是這樣做的:從TextView的後一層背景中截取一部分;進行模糊處理;把模糊處理後的部分設置為TextView的背景。
實現activity模糊圖層效果是RenderScript是Android在API 11之後加入的,用於高效的圖片處理,包括模糊、混合、矩陣卷積計算等,通過一種fastblur模糊圖片演算法來計算一張圖片像素,進而更改圖片的解析度和模糊程度。演算法代碼可以參考這篇csdn博客介紹幾種模糊演算法,地址如下:http://blog.csdn.net/xu_fu/article/details/23131241。

幾種演算法實現的效果都差不多,但是效果和時間上還是有很大區別,這取決於你的Android實際的運行環境,如果機器是Android API 2.0以下的,就不能使用RenderScript類,只能使用硬編碼方式,這就涉及到OPENGL的知識了,OPENGL就是對圖像進行各種處理的一門知識,這些知識都可以到網上找得到。我在csdn上次了一個Android圖片模糊處理的一個小demo,歡迎下載:鏈接如下:http://download.csdn.net/detail/omayyouhappy/8888251

熱點內容
心c語言程序 發布:2024-11-29 05:15:58 瀏覽:176
三星s6有什麼配置 發布:2024-11-29 05:15:23 瀏覽:762
安卓泰捷視頻在哪裡 發布:2024-11-29 04:59:43 瀏覽:597
androidstudio同步 發布:2024-11-29 04:37:50 瀏覽:115
python用什麼 發布:2024-11-29 04:37:40 瀏覽:793
w10系統如何搭建ftp伺服器 發布:2024-11-29 04:37:36 瀏覽:790
python模擬訪問網頁 發布:2024-11-29 04:33:21 瀏覽:228
除了安卓還有什麼可以下載的 發布:2024-11-29 04:05:44 瀏覽:382
coreldraw用戶臨時文件夾 發布:2024-11-29 04:05:44 瀏覽:741
如何設置ipad文件夾 發布:2024-11-29 03:59:16 瀏覽:142