文档章节

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

wanyang
 wanyang
发布于 2014/01/07 20:15
字数 141
阅读 92
收藏 6

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

 

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.       }  

 


本文转载自:

wanyang
粉丝 3
博文 41
码字总数 7838
作品 0
徐汇
程序员
私信 提问
Android Bitmap与DrawAble与byte[]与InputStream之间的转换工具类【转】

[java] view plaincopyprint? package com.soai.imdemo; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.InputStream; import android.graphi......

guozhendan
2018/06/26
0
0
android Bitmap与Drawable与byte[]与InputStream之间的转换工具类

package com.shntec.xmm.platform; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.InputStream; import android.graphics.Bitmap; import an......

徐荣
2012/12/03
0
1
Bitmap和Drawable的关系、区别

Bitmap - 称作位图,一般位图的文件格式后缀为bmp Drawable - 作为Android平下通用的图形对象,它可以装载常用格式的图像 比如GIF、PNG、JPG,当然也支持BMP,当然还提供一些高级的可视化对象...

移动开发
2017/12/22
0
0
Android中Bitmap和Drawable和byte[]

一、相关概念 1、Drawable就是一个可画的对象,其可能是一张位图(BitmapDrawable),也可能是一个图形(ShapeDrawable),还有可能是一个图层(LayerDrawable),我们根据画图的需求,创建相...

stefanliao
2012/06/04
0
0
Drawable 和 Bitmap(转)

一、相关概念 1、Drawable就是一个可画的对象,其可能是一张位图(BitmapDrawable),也可能是一个图形(ShapeDrawable),还有可能是一个图层(LayerDrawable),我们根据画图的需求,创建相...

caikezhan
2012/04/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

利用mybatis generator生成实体类、Mapper接口以及对应的XML文件

项目中通常会遇到数据的持久化,如果是采用mybatis的orm,就会涉及到生成xml的问题,刚好mybatis官网提供了这么个插件MyBatis Generator,效果简直是棒呆。 1. 首先需要在build.gradle文件中...

啊哈关关
今天
2
0
SpringSocial相关的知识点

使用SprigSocial开发第三方登录 核心类 ServiceProvider(AbstractOauth2ServiceProvider):主要负责实现server提供商(例如QQ,微信等共有的东西),默认实现类是AbstractOauth2ServiceProvider...

chendom
今天
3
0
Java并发之AQS详解

一、概述   谈到并发,不得不谈ReentrantLock;而谈到ReentrantLock,不得不谈AbstractQueuedSynchronizer(AQS)!   类如其名,抽象的队列式的同步器,AQS定义了一套多线程访问共享资源...

群星纪元
昨天
4
0
Fabric-sdk-java最新教程

Fabric Java SDK是Fabric区块链官方提供的用于Java应用开发的SDK,全称为Fabric-sdk-java,网上可用资料不多,本文列出了精心整理的针对Fabric Java SDK的最新精选教程。 如果希望快速掌握F...

汇智网教程
昨天
3
0
react 子组件监听props 变化

componentWillReceiveProps //已经被废弃 getDerivedStateFromProps// 推荐使用//如果条件不存在必须要返回null static getDerivedStateFromProps(props, current_stat...

一箭落旄头
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部