Android中Bitmap、Drawable、byte[]互换
转载1.Drawable—>Bitmap
查看源代码打印帮助
Resources res=getResources();
Bitmap bmp=BitmapFactory.decodeResource(res, R.drawable.sample_0);
2.Bitmap---->Drawable
Drawable drawable =new BitmapDrawable(bmp);
另外在网上搜了一些其它的方法,在这里分享下
1、Drawable → Bitmap
public static Bitmap drawableToBitmap(Drawable drawable)
{
Config config;
if (drawable.getOpacity() != PixelFormat.OPAQUE)
{
config = Bitmap.Config.ARGB_8888;
}
else
{
config = Bitmap.Config.RGB_565;
}
Bitmap bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(),
rawable.getIntrinsicHeight(),config);
Canvas canvas = new Canvas(bitmap);
// canvas.setBitmap(bitmap);
drawable.setBounds(0, 0, drawable.getIntrinsicWidth(),
drawable.getIntrinsicHeight());
drawable.draw(canvas);
return bitmap;
}
2、从资源中获取Bitmap
Resources res=getResources();
Bitmap bmp=BitmapFactory.decodeResource(res, R.drawable.pic);
3、Bitmap → byte[]
private byte[] Bitmap2Bytes(Bitmap bm)
{
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bm.compress(Bitmap.CompressFormat.PNG, 100, baos);
return baos.toByteArray();
}
4、byte[] → Bitmap
private Bitmap Bytes2Bimap(byte[] b)
{
if (b.length != 0)
{
return BitmapFactory.decodeByteArray(b, 0, b.length);
} else
{
return null;
}
}
本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
Android Bitmap和Drawable
、Bitmap1、从资源中获取BitmapJava代码 Re
android matrix float output shader -
Bitmap,byte流,drawable之相互转换
刚开始学习android,以前学习J2me的时候也碰到过类似的问题,现在看到有同学总
android java Java ci -
android bitmap drawable 互转
引用: ://.android123.com.cn/kaifafaq/704.html很多开发者表示,不知道Android的Drawable和Bitmap之间如何相关转换。下面Android123给大家两种比较简单高效的方法。 一、Bitmap转Drawable Bitmap bm=xxx; //xxx根据你的情况获取 BitmapDrawable bd=BitmapDrawable(bm);Android开发网提示因为BtimapDrawable是Drawable的子类,最终直接使用bd对象即可。二、 Drawable转Bitmap 转成Bitmap对象后,可以将Drawabl
手机开发--------android android 子类 android开发 输出流