博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android -- Drawable && Bitmap
阅读量:6547 次
发布时间:2019-06-24

本文共 1308 字,大约阅读时间需要 4 分钟。

Bitmap转Drawable                                                                    

Bitmap bm=xxx; BitmapDrawable bd=new BitmapDrawable(bm);

因为BtimapDrawable是Drawable的子类,最终直接使用bd对象即可。

Drawable转Bitmap                                                                    

Drawable d=xxx; BitmapDrawable bd = (BitmapDrawable) d;Bitmap bm = bd.getBitmap();

最终bm就是我们需要的Bitmap对象了。

从资源中获取Bitmap                                                                  

public static Bitmap getBitmapFromResources(Activity act, int resId) {    Resources res = act.getResources();    return BitmapFactory.decodeResource(res, resId);}

byte[] → Bitmap                                                                     

public static Bitmap convertBytes2Bimap(byte[] b) {    if (b.length == 0) {        return null;    }    return BitmapFactory.decodeByteArray(b, 0, b.length);}

Bitmap → byte[]                                                                     

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

Drawable → Bitmap                                                                  

public static Bitmap convertDrawable2BitmapByCanvas(Drawable drawable) {    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);    // canvas.setBitmap(bitmap);    drawable.setBounds(0, 0, drawable.getIntrinsicWidth(),    drawable.getIntrinsicHeight());    drawable.draw(canvas);    return bitmap;}

我是天王盖地虎的分割线                                                             

转载地址:http://iredo.baihongyu.com/

你可能感兴趣的文章
删除LVM步骤
查看>>
Zookeeper客户端
查看>>
linux常用指令
查看>>
Oracle使用PLSQL连接时,导入导出问题
查看>>
Servlet Demo
查看>>
Struts2中的<s:action>标签
查看>>
Java中取某一个范围的随机数
查看>>
一条复杂SQL实现思路
查看>>
我的友情链接
查看>>
android app 退出时提示确认
查看>>
win10 配置
查看>>
java 编译100个范例
查看>>
Session Cookie ServletContext
查看>>
单点登录SSO
查看>>
遇见有的软件开启后画面模糊怎么解决
查看>>
好系统重装助手教你怎么识别固态硬盘还是机械硬盘
查看>>
170. js中获取随机数 (记录一下)
查看>>
深入浅出爬虫之道: Python、Golang与GraphQuery的对比
查看>>
DHCP配置
查看>>
MySQL性能测试(二)——Ubuntu 14.4.02, MySQL 5.6.25, sysbench 4.8
查看>>