• 转载 Drawable、Bitmap、byte[]之间的转换


    ndroid在处理一写图片资源的时候,会进行一些类型的转换,现在有空整理一下:

    1、Drawable → Bitmap

    Java代码  收藏代码
    1. public static Bitmap drawableToBitmap(Drawable drawable) {  
    2.           
    3.         Bitmap bitmap = Bitmap  
    4.                         .createBitmap(  
    5.                                         drawable.getIntrinsicWidth(),  
    6.                                         drawable.getIntrinsicHeight(),  
    7.                                         drawable.getOpacity() != PixelFormat.OPAQUE ? Bitmap.Config.ARGB_8888  
    8.                                                         : Bitmap.Config.RGB_565);  
    9.         Canvas canvas = new Canvas(bitmap);  
    10.         //canvas.setBitmap(bitmap);  
    11.         drawable.setBounds(00, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight());  
    12.         drawable.draw(canvas);  
    13.         return bitmap;  
    14. }  

    2、从资源中获取Bitmap

    Java代码  收藏代码
    1. Resources res=getResources();  
    2.   
    3. Bitmap bmp=BitmapFactory.decodeResource(res, R.drawable.pic);  

    3、Bitmap → byte[]

    Java代码  收藏代码
    1. private byte[] Bitmap2Bytes(Bitmap bm){  
    2.     ByteArrayOutputStream baos = new ByteArrayOutputStream();    
    3.     bm.compress(Bitmap.CompressFormat.PNG, 100, baos);    
    4.     return baos.toByteArray();  
    5.    }  

     
    4、 byte[] → Bitmap

    Java代码  收藏代码
    1. private Bitmap Bytes2Bimap(byte[] b){  
    2.             if(b.length!=0){  
    3.                 return BitmapFactory.decodeByteArray(b, 0, b.length);  
    4.             }  
    5.             else {  
    6.                 return null;  
    7.             }  
    8.       }  
  • 相关阅读:
    1002 写出这个数
    1001 害死人不偿命的(3n+1)猜想
    Graph I
    Tree
    进程通信
    管道
    fork函数
    Priority Queue
    Search
    游戏 slider
  • 原文地址:https://www.cnblogs.com/xiao0/p/2170289.html
Copyright © 2020-2023  润新知