给你拷贝过来了
android在处理一写图片资源的时候,会进行一些类型的转换,现在有空整理一下:
 
1、Drawable → Bitmap
 01.public static Bitmap drawableToBitmap(Drawable drawable) { 02. 03.Bitmap bitmap = Bitmap 04. .createBitmap( 05. drawable.getIntrinsicWidth(), 06.drawable.getIntrinsicHeight(), 07.drawable.getOpacity() != PixelFormat.OPAQUE ? Bitmap.Config.ARGB_8888 08. : Bitmap.Config.RGB_565); 09.Canvas canvas = new Canvas(bitmap); 10.//canvas.setBitmap(bitmap); 11.drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight()); 12. drawable.draw(canvas); 13. return bitmap; 14.} 
复制代码2、从资源中获取Bitmap
 01.Resources res=getResources(); 02.
 
03.Bitmap bmp=BitmapFactory.decodeResource(res, R.drawable.pic); 
复制代码
 3、Bitmap → byte[]
 01.private byte[] Bitmap2Bytes(Bitmap bm){
 
02. ByteArrayOutputStream baos = new ByteArrayOutputStream(); 03. bm.compress(Bitmap.CompressFormat.PNG, 100, baos); 04. return baos.toByteArray();
 
05. }
复制代码
 4、 byte[] → Bitmap01.private Bitmap Bytes2Bimap(byte[] b){
 
02.if(b.length!=0){
 
03.return BitmapFactory.decodeByteArray(b, 0, b.length);
 
04.}
 
05.else {
 
06.return null;
 
07.}
 
08.}
复制代码