L遷客

          技術博客
          隨筆 - 1, 文章 - 12, 評論 - 1, 引用 - 0
          數據加載中……

          drawable轉bitmap

          -------------------------------------------------------------
          //一、drawable---->bitmap
          -------------------------------------------------------------
           1 public static Bitmap drawableToBitmap(Drawable drawable) {            
           2        Bitmap bitmap = Bitmap  
           3                        .createBitmap(  
           4                                       drawable.getIntrinsicWidth(),  
           5                                        drawable.getIntrinsicHeight(),  
           6                                       drawable.getOpacity() != PixelFormat.OPAQUE ? Bitmap.Config.ARGB_8888  
           7                                                       : Bitmap.Config.RGB_565);           Canvas canvas = new Canvas(bitmap);  
           8        //canvas.setBitmap(bitmap);  
           9        drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight());  
          10         drawable.draw(canvas);  
          11        return bitmap;  
          12 } 
          -------------------------------------------------------------
          //二、從資源中獲取Bitmap:drawable---->bitmap
          -------------------------------------------------------------
          1 Resources res=getResources();    
          2 Bitmap bmp=BitmapFactory.decodeResource(res, R.drawable.pic); 
          3 //或者這種方法也行,這兩種方法都一樣
          4 Bitmap bmp = ((BitmapDrawable)this.getResources.getDrawable(R.drawable.pic)).getBitmap();

          -------------------------------------------------------------
          //三、bitmap---->drawable
          -------------------------------------------------------------
          1 /**
          2     * Bitmap轉化為drawable
          3     * @param bitmap
          4     * @return
          5     */ 
          6     public static Drawable bitmap2Drawable(Bitmap bitmap){ 
          7         return new BitmapDrawable(bitmap) ; 
          8     } 

          -------------------------------------------------------------
          //四、bitmap---->byte[]
          -------------------------------------------------------------
          1 private byte[] Bitmap2Bytes(Bitmap bm){  
          2     ByteArrayOutputStream baos = new ByteArrayOutputStream();    
          3     bm.compress(Bitmap.CompressFormat.PNG, 100, baos);    
          4     return baos.toByteArray();  
          5    } 

          -------------------------------------------------------------
          //五、byte[]---->bitmap
          ------------------------------------------------------------- 
          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   } 

           

          posted on 2013-02-24 16:43 L遷客 閱讀(568) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 阳高县| 独山县| 东丽区| 南昌市| 拜泉县| 台湾省| 周口市| 白银市| 闻喜县| 柳州市| 红河县| 那曲县| 措美县| 唐山市| 台南市| 大埔区| 礼泉县| 中方县| 广饶县| 邢台市| 新晃| 雅安市| 合肥市| 朔州市| 隆德县| 乐至县| 西峡县| 乌审旗| 云阳县| 石阡县| 灵丘县| 垦利县| 玉溪市| 鲜城| 泉州市| 兰州市| 平利县| 白沙| 宣化县| 丰县| 克山县|