我想将图像的模糊图像设置为背景

时间:2017-11-02 10:37:54

标签: android

我想将图像的模糊图像设置为背景。我的图像视图区域就像矩形。在方形图像的情况下,背景图像不保持其宽高比。 如何将平方图像设置为矩形区域中的背景。

我使用了以下代码

Bitmap outputBitmap = Bitmap.createScaledBitmap(image, image.getWidth(), image.getHeight(),true);
  final RenderScript renderScript = RenderScript.create(MyApplication.getContext());
    Allocation tmpIn = Allocation.createFromBitmap(renderScript, image);
    Allocation tmpOut = Allocation.createFromBitmap(renderScript, outputBitmap);
    //Intrinsic Gausian blur filter
    ScriptIntrinsicBlur theIntrinsic = ScriptIntrinsicBlur.create(renderScript, Element.U8_4(renderScript));
    theIntrinsic.setRadius(BLUR_RADIUS);
    theIntrinsic.setInput(tmpIn);
    theIntrinsic.forEach(tmpOut);
    tmpOut.copyTo(outputBitmap);
    renderScript.destroy();

下面给出了屏幕截图。我想用模糊的图像填充背景 screenshot

1 个答案:

答案 0 :(得分:1)

您可以使用模糊转换通过Glide执行此操作。请尝试下面的代码

  public static void setBlurImageToBackground(final Context context, final String path, final ImageView imageView) {
    imageView.postDelayed(new Runnable() {
        @Override
        public void run() {
            Glide.with(context).load(path)
                    .apply(bitmapTransform(new BlurTransformation(25)))
                    .into(imageView);
        }
    }, DELAY_DURATION);
}

注意:添加以下依赖项

 compile 'com.github.bumptech.glide:glide:3.7.0'
 compile 'jp.wasabeef:glide-transformations:3.0.1'