Android中Bitmap、Drawable、byte[]转换

    public byte[] getBitmapByte(Bitmap bitmap){

        ByteArrayOutputStream out = new ByteArrayOutputStream();

        bitmap.compress(Bitmap.CompressFormat.JPEG, 100, out);

        try {

            out.flush();

            out.close();

        } catch (IOException e) {

            e.printStackTrace();

        }

        return out.toByteArray();

    }

    

    

    public Bitmap getBitmapFromByte(byte[] temp){

        if(temp != null){

            Bitmap bitmap = BitmapFactory.decodeByteArray(temp, 0, temp.length);

            return bitmap;

        }else{

            return null;

        }

    }

 

public static Bitmap drawableToBitmap(Drawable drawable){  



            int width = drawable.getIntrinsicWidth();  



            int height = drawable.getIntrinsicHeight();  



            Bitmap bitmap = Bitmap.createBitmap(width, height,  



                    drawable.getOpacity() != PixelFormat.OPAQUE ? Bitmap.Config.ARGB_8888  



                            : Bitmap.Config.RGB_565);  



            Canvas canvas = new Canvas(bitmap);  



            drawable.setBounds(0,0,width,height);  



            drawable.draw(canvas);  



            return bitmap;  



              



        }  


 

Drawable drawable = new FastBitmapDrawable(bitmap);

 

你可能感兴趣的:(drawable)