android在处理一写图片资源的时候,会进行一些类型的转换,现在有空整理一下:
1、Drawable → Bitmap
public static Bitmap drawableToBitmap(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;
}
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中进行Drawable到Bitmap以及Bitmap到Drawable的转换。 首先,Drawable是一个抽象的概念,它代表了Android系统中的可绘制对象,包括Bitmap、Shape、LevelList、NinePatch等。而Bitmap则...
Android开发者学习笔记-View、Canvas、bitmap.pdf
相比直接使用Android原生的Bitmap和Canvas来处理GIF,`android-gif-drawable`库提供了更为便捷和高效的解决方案。 在Android应用中集成`android-gif-drawable`库,通常需要以下步骤: 1. **添加依赖**:在你的`...
`android-gif-drawable`是一个流行的开源库,专门用于在Android应用中渲染和播放GIF图像。这个库提供了高效且灵活的方式来处理GIF动画,使其能够在各种视图组件上显示,包括自定义View。下面我们将深入探讨这个库的...
在Android开发中,图片资源的处理是常见的需求之一,涉及到多种数据类型之间的转换,包括`Drawable`、`Bitmap`、`byte[]`等。本文将详细介绍这些类型之间的转换方法,以及如何实现灰度图像的转换。 ### 1. `...
`android-gif-drawable`是一个流行的开源库,它为Android平台提供了高效的GIF解析和显示功能。这个压缩包`android-gif-drawable-master`包含了该库的源代码,对于开发者来说,深入理解其工作原理和使用方法非常有...
### Drawable与Bitmap之间的转换 在Android开发过程中,经常会遇到图像处理的需求,比如将应用程序中的图标、背景图等进行转换和操作。其中,`Drawable`和`Bitmap`是两种常见的图像对象类型,它们各自有着不同的...
在Android开发中,OpenCV库...总之,Android OpenCV中Bitmap转换为Mat的问题主要与Bitmap的加载方式和OpenCV的兼容性有关。通过理解这两种数据结构以及它们之间的转换机制,开发者可以采取适当措施避免或解决此类问题。
在Android开发中,图片资源的处理是常见的需求之一,尤其涉及到不同格式间的转换,如Drawable、Bitmap、byte数组以及灰度图像的转换。这些转换在实际应用中具有重要意义,不仅能够优化内存使用,还能实现图像的高效...
《深入解析Android-Gif-Drawable:实现GIF动态图显示的关键技术》 在Android开发中,为了增强用户体验,我们经常需要在应用中展示GIF动态图。Android原生系统并未提供内置支持GIF的视图组件,但通过第三方库如`...
为了在Android应用中显示.fig文件,需要自定义解析器将.fig数据转换为Android可以理解的格式,比如SVG或Bitmap。 6. **自定义View**:在Android开发中,自定义View允许开发者扩展标准的UI组件,以实现特殊的功能或...
开源项目-boljen-go-bitmap.zip,go-bitmap - Some simple bitmap utilities - Could someone please review SetAtomic?
### Android中Drawable、Bitmap与byte[]之间的转换 在Android应用开发过程中,经常需要对图像资源进行处理,这就涉及到了不同图像格式之间的转换。本文将详细介绍`Drawable`、`Bitmap`及`byte[]`三者之间的转换方法...
开源项目-seiflotfy-s-bitmap.zip,S-Bitmap: Distinct Counting with a Self-Learning Bitmap (an equivalent to HyperLogLog) implemented in Go
本篇文章将深入探讨如何在Android中进行Bitmap与String之间的转换,以及这些转换在实际应用中的场景。 首先,我们要理解Bitmap与String转换的原理。Bitmap是Android系统中用来表示图像的类,它包含了图像的所有像素...
综上所述,"Android-本类库可以对ImageViewViewBackgroundDrawable和Bitmap添加风格与设置亮度对比度"是一个强大的工具,帮助开发者在Android应用中实现多样化的图片样式和视觉效果。通过充分利用这个库,开发者可以...
Android Drawable和Bitmap的转换实例详解 通常我们需要通过代码去设置图片,就需要设置图片Bitmap和Drawable的转换,下面整理了几种方式 一、Bitmap转Drawable Bitmap bm=xxx; //xxx根据你的情况获取 ...
Bitmap Merger is a simple project help you to merge two bitmaps without memory exceptions. The bitmaps are processed in background threads thereby taking the load away from UI thread. Along with merge...
This project came about as part of my blog post: http://www.senab.co.uk/2012/07/01/android-bitmap-caching-revisited/ Android-BitmapCache is a specialised cache, for use with Android Bitmap objects. I...
在Android开发中,Bitmap是用于图像处理的基本对象,它存储并表示了图像的数据。而Matrix则是Android图形系统中的一个关键类,它允许我们对图像进行各种变换操作,如旋转、缩放、平移和倾斜等。这个教程将深入探讨...