Android中Bitmap、Drawable、byte[…

Android中Bitmap、Drawable、byte[]转换 
1.Drawable—>Bitmap 

Resources res=getResources(); 
Bitmap bmp=BitmapFactory.decodeResource(res, R.drawable.sample_0); 

2.Bitmap---->Drawable 

Drawable drawable =new BitmapDrawable(bmp); 

另外在网上搜了些,也不知到底谁是原创的 

1、Drawable → Bitmap 

public static Bitmap drawableToBitmap(Drawable drawable) {       

        Bitmap bitmap = Bitmap.createBitmap( 

                                        drawable.getIntrinsicWidth(), 

                                        drawable.getIntrinsicHeight(), 

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

                                                        : Bitmap.Config.RGB_565); 

        Canvas canvas = new Canvas(bitmap); 

        //canvas.setBitmap(bitmap); 

        drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight()); 

        drawable.draw(canvas); 

        return bitmap; 



2、从资源中获取Bitmap 
Resources res=getResources(); 

Bitmap bmp=BitmapFactory.decodeResource(res, R.drawable.pic); 

3、Bitmap → byte[] 
private byte[] Bitmap2Bytes(Bitmap bm){ 

    ByteArrayOutputStream baos = new ByteArrayOutputStream(); 

    bm.compress(Bitmap.CompressFormat.PNG, 100, baos); 

你可能感兴趣的:(Android中Bitmap、Drawable、byte[…)