【Android】图像中Drawable向Bitmap的两种转换方法

来源:互联网 发布:高考心态调整 知乎 编辑:程序博客网 时间:2024/06/05 02:21

Drawable和Bitmap转换

方法一:

    private void drawableToBitamp(Drawable drawable)    {        int w = drawable.getIntrinsicWidth();        int h = drawable.getIntrinsicHeight();        System.out.println("Drawable转Bitmap");        Bitmap.Config config =                 drawable.getOpacity() != PixelFormat.OPAQUE ? Bitmap.Config.ARGB_8888                        : Bitmap.Config.RGB_565;        bitmap = Bitmap.createBitmap(w,h,config);        //注意,下面三行代码要用到,否在在View或者surfaceview里的canvas.drawBitmap会看不到图        Canvas canvas = new Canvas(bitmap);           drawable.setBounds(0, 0, w, h);           drawable.draw(canvas);    }  

方法二:直接转换

    private void drawableToBitamp(Drawable drawable)    {        BitmapDrawable bd = (BitmapDrawable) drawable;        bitmap = bd.getBitmap();    }
0 0