相关疑难解决方法(0)

android编程模糊imageview drawable

我想在Android中以编程方式模糊和解开图像.

我听说在API 14之后不再支持android标志"blur",但我还是想使用Java方法.我的主要问题是从Imageview drawable操纵位图.

我如何从imageview获取位图并对其进行操作(可能会使用高斯模糊)并将其设置回imageview?我认为这个过程涉及提取drawable,将drawable转换为位图,在该位图上执行我的模糊方法,然后反过来直到它再次设置为imageview

但是我希望这个过程拼写出来,谢谢

android bitmap blur drawable imageview

10
推荐指数
2
解决办法
2万
查看次数

Android ImageView模糊动画

我想添加模糊动画ImageView,但设置持续时间.所以,例如,我希望图像随着时间的推移而模糊.

我已经有了模糊图像的方法,但我需要的是让它从模糊变为无模糊,比如2秒.

有人可以帮帮我吗?

编辑:这是我目前模糊图像的方法.

public Bitmap blur(Bitmap sentBitmap, int radius) {

    // Stack Blur Algorithm by Mario Klingemann <mario@quasimondo.com>

    Bitmap bitmap = sentBitmap.copy(sentBitmap.getConfig(), true);

    if (radius < 1) {
        return (null);
    }

    int w = bitmap.getWidth();
    int h = bitmap.getHeight();

    int[] pix = new int[w * h];
    Log.e("pix", w + " " + h + " " + pix.length);
    bitmap.getPixels(pix, 0, w, 0, 0, w, h);

    int wm = w - 1;
    int hm = h - 1; …
Run Code Online (Sandbox Code Playgroud)

animation android imageview android-animation

6
推荐指数
2
解决办法
1万
查看次数

如何设置模糊/暗淡背景

我正在尝试设置模糊背景图像.Android工作室项目可用.但我正在使用eclipse.那么任何人都可以帮助我如何以编程方式设置模糊图像?

android

6
推荐指数
1
解决办法
3万
查看次数

如何在android中通过XML为可绘制图像添加模糊效果

如何使用xml而不是Java在放置在布局的图像视图对象中的可绘制图像上添加模糊效果?我想用XML编写这种模糊效果.

android

6
推荐指数
1
解决办法
6903
查看次数

如何使用无伪影的Renderscript模糊效果?

背景

有很多地方(包括here)来展示如何使用Renderscript来模糊图像,例如:

@TargetApi(VERSION_CODES.JELLY_BEAN_MR1)
public static Bitmap renderScriptBlur(Context context, Bitmap srcBitmap, @FloatRange(from = 0.0f, to = 25.0f) float radius) {
    if (srcBitmap == null)
        return null;
    Bitmap outputBitmap = null;
    RenderScript rs = null;
    try {
        rs = RenderScript.create(context);
        outputBitmap = Bitmap.createBitmap(srcBitmap.getWidth(), srcBitmap.getHeight(), Bitmap.Config.ARGB_8888);
        final Canvas canvas = new Canvas(outputBitmap);
        canvas.drawBitmap(srcBitmap, 0, 0, null);
        Allocation overlayAlloc = Allocation.createFromBitmap(rs, outputBitmap);
        ScriptIntrinsicBlur blur = ScriptIntrinsicBlur.create(rs, Element.U8_4(rs));
        blur.setInput(overlayAlloc);
        blur.setRadius(radius);
        blur.forEach(overlayAlloc);
        overlayAlloc.copyTo(outputBitmap);
        return outputBitmap;
    } catch (Exception ex) {
        if (outputBitmap != null) …
Run Code Online (Sandbox Code Playgroud)

android bitmap blur renderscript

6
推荐指数
1
解决办法
2445
查看次数

如何模糊位图(Android)?

我正在努力使用Android模糊Bitmaps.

我已经看到很多关于使用简单内核的信息

0    0    0    5    0    0    0
0    5   18   32   18    5    0
0   18   64  100   64   18    0
5   32  100  100  100   32    5
0   18   64  100   64   18    0
0    5   18   32   18    5    0
0    0    0    5    0    0    0
Run Code Online (Sandbox Code Playgroud)

我的问题是我真的不确定如何以有效的方式将其与我的Bitmap相乘.

我应该通过每个像素和

image.getPixel(x, y)
Run Code Online (Sandbox Code Playgroud)

同时将这些值存储到一个新数组(所以我不必一遍又一遍地获取这些值),然后遍历数组,并为每个值加上周围的值乘以内核中的相应字段除以1068 (在上述内核的情况下(=所有条目总结))?

有没有更好的方法来做到这一点?边界有一个简单的解决方案吗?

或者在我错过的Android SDK中是否有可用的东西?

android bitmap blur

5
推荐指数
1
解决办法
4994
查看次数

RenderScript无法正确渲染ScriptIntrinsicBlur,导致ScriptIntrinsicBlur呈现彩虹色

使用滑动android库我将图像作为位图(参见滑动文档),然后我尝试使用renderscript和ScriptIntrinsicBlur模糊位图,这是一个高斯模糊.(取自此stackoverflow帖子)

 Glide.with(getApplicationContext())
    .load(ImageUrl)
    .asBitmap()
    .into(new SimpleTarget<Bitmap>(300,200) {
        @Override
        public void onResourceReady(Bitmap resource, GlideAnimation glideAnimation) {

            RenderScript rs = RenderScript.create(mContext); // context = this. this referring to the activity

            final Allocation input = Allocation.createFromBitmap( rs, resource, 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(8f);
            script.setInput(input);
            script.forEach(output);
            output.copyTo(resource);

            mImageView.setImageBitmap(resource); 
        }
    });
Run Code Online (Sandbox Code Playgroud)

问题是这是输出,而不是模糊的图像: 在此输入图像描述

任何帮助将非常感谢谢谢.:)

android bitmap imageview renderscript

5
推荐指数
2
解决办法
1011
查看次数

在Android手机上使用RenderScript支持库尝试模糊图像时出错

我正在尝试模糊我的图像,并使用RenderScript在RelativeLayout的背景上显示模糊,应用程序在模拟器中工作,但手机中的应用程序不断崩溃,出现此错误:

08-05 22:21:36.543:E/RenderScript_jni(11549):无GC方法08-05 22:21:36.553:D/dalvikvm(11549):在/system/lib/libRSSupport.so 0x41803ab8中找不到JNI_OnLoad,跳过init 08-05 22:21:36.557:E/dalvikvm(11549):错误:找不到本地方法08-05 22:21:36.557:E/dalvikvm(11549):请求:Landroid/support/v8/renderscript /RenderScript; ._nInit :() V 08-05 22:21:36.558:E/JNIHelp(11549):RegisterNatives因'android/support/v8/renderscript/RenderScript'失败,中止08-05 22:21:36.558: A/libc(11549):0xdeadbaad(代码= 1),线程11549(m.example.login)的致命信号11(SIGSEGV)

这是我在单独的类上的模糊代码:

import android.content.Context;
import android.graphics.Bitmap;
import android.support.v8.renderscript.*;

public class Blur {
    public static Bitmap blurBitmap(Context context, Bitmap src) {
        Bitmap outBitmap = src.copy(src.getConfig(), true);

        final RenderScript rs = RenderScript.create(context);
        final Allocation input = Allocation.createFromBitmap(rs, src);
        final Allocation output = Allocation.createFromBitmap(rs, outBitmap);

        final ScriptIntrinsicBlur script =
                ScriptIntrinsicBlur.create(rs, Element.U8_4(rs));
        script.setRadius(25f);
        script.setInput(input);
        script.forEach(output);
        output.copyTo(outBitmap);

        rs.destroy();

        return outBitmap;
    }
}
Run Code Online (Sandbox Code Playgroud)

这里是MainActivity中的ny代码(我从图库中获取位图):

Uri selectedImageUri = data.getData();
Blur blur …
Run Code Online (Sandbox Code Playgroud)

android bitmap blur renderscript

1
推荐指数
1
解决办法
3928
查看次数