如何在Android中将带有额外部分的布局截图设为透明而不是黑色

时间:2015-03-03 07:32:26

标签: android bitmap

当前我正在做一个图像编辑Android应用程序,其中我需要截取一个相对布局的屏幕截图我的代码:

  public Bitmap takeScreenshot() {
            Bitmap bitTmp;
            View rootView = findViewById(R.id.rl_img_view);
            rootView.setDrawingCacheEnabled(true);
            bitTmp = rootView.getDrawingCache();
            return bitTmp;
        }

我的问题是,当我拍摄截图时,它会发送给我的位图,其中包含布局的空白部分为黑色。 是否可以在输出位图上使该空白部分透明?

输出我得到:http://postimg.org/image/5mxznc6jv

我希望输出:http://postimg.org/image/50bre04kf

1 个答案:

答案 0 :(得分:1)

更改您获得的位图的宽度,或者可以从左侧添加填充。

使用此:

Public Bitmap pad(Bitmap Src, int padding_x, int padding_y){
    Bitmap outputimage = Bitmap.createBitmap(Src.getWidth() + padding_x,Src.getHeight() + padding_y, Bitmap.Config.ARGB_8888);
Canvas can = new Canvas(outputimage);
can.drawARGB(FF,FF,FF,FF); //This represents White color
can.drawBitmap(Src, padding_x, padding_y, null);

return outputimage;
}

请参阅此问题:Canvas Bitmap