我使用ScriptIntrinsicBlur来模糊Bitmap。但我没有得到我喜欢的背景。 代码:
public Bitmap BlurImage(Bitmap input, Context ctx) {
try {
RenderScript rsScript = RenderScript.create(ctx);
Allocation alloc = Allocation.createFromBitmap(rsScript, input);
ScriptIntrinsicBlur blur = ScriptIntrinsicBlur.create(rsScript, Element.U8_4(rsScript));
blur.setRadius(radius);
blur.setInput(alloc);
Bitmap result = Bitmap.createBitmap(input.getWidth(), input.getHeight(), Bitmap.Config.ARGB_8888);
Allocation outAlloc = Allocation.createFromBitmap(rsScript, result);
blur.forEach(outAlloc);
outAlloc.copyTo(result);
rsScript.destroy();
return result;
} catch (Exception e) {
// TODO: handle exception
return input;
}
}
查看这些样品图片: 第一个是我如何得到背景。
第二个是我需要的背景。
谢谢。