Drawable –> Bitmap

Bitmap drawable2Bitmap(Drawable drawable) {          if (drawable instanceof BitmapDrawable) {              return ((BitmapDrawable) drawable).getBitmap();          } else if (drawable instanceof NinePatchDrawable) {              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);              drawable.setBounds(0, 0, drawable.getIntrinsicWidth(),                      drawable.getIntrinsicHeight());              drawable.draw(canvas);              return bitmap;          } else {              return null;          }      }      Bitmap drawable2Bitmap(Drawable drawable) {        if (drawable instanceof BitmapDrawable) {            return ((BitmapDrawable) drawable).getBitmap();        } else if (drawable instanceof NinePatchDrawable) {            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);            drawable.setBounds(0, 0, drawable.getIntrinsicWidth(),                    drawable.getIntrinsicHeight());            drawable.draw(canvas);            return bitmap;        } else {            return null;        }    }

从资源中获取的Drawable –> Bitmap

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

Bitmap –> Drawable

Drawable bitmap2Drawable(Bitmap bitmap) {          return new BitmapDrawable(bitmap);      }      Drawable bitmap2Drawable(Bitmap bitmap) {        return new BitmapDrawable(bitmap);    }

Bitmap –> byte[]

byte[] Bitmap2Bytes(Bitmap bm) {          ByteArrayOutputStream baos = new ByteArrayOutputStream();          bm.compress(Bitmap.CompressFormat.PNG, 100, baos);          return baos.toByteArray();      }      byte[] Bitmap2Bytes(Bitmap bm) {        ByteArrayOutputStream baos = new ByteArrayOutputStream();        bm.compress(Bitmap.CompressFormat.PNG, 100, baos);        return baos.toByteArray();    }

byte[] –> Bitmap

Bitmap Bytes2Bimap(byte[] b) {          if (b.length != 0) {              return BitmapFactory.decodeByteArray(b, 0, b.length);          } else {              return null;          }      }  

更多相关文章

  1. Android 之 将RAW资源文件写入SD卡工具类
  2. Android相关网络资源整理
  3. 一个android访问http资源的便捷工具类――HttpHelper
  4. Android学习资源-retrofit,eventBus,butterknife,fragment
  5. 【Demo 0005】Android 资源
  6. 很好的资源学习入口_android
  7. Android 各种类型的资源 文件

随机推荐

  1. android vlc 编译流程
  2. Android(安卓)设置声音时出现按键音
  3. android 单元测试 radio group
  4. Android(安卓)源代码结构
  5. android代码格式化方法小结
  6. Android(安卓)Wear Preview - 设计规范(De
  7. Android7.0中文文档(API) -- EdgeEffect
  8. Android(安卓)弹球游戏
  9. Android7.0中文文档(API) -- Switch
  10. Android系统中自带的图标