您的位置:首页 > 移动开发 > Android开发

android 中bitmap与String(base64) byte[]、和drawable的互相转换

2017-07-29 21:53 1126 查看
记录下bitmap与String(base64) byte[]、和drawable之间的转换

参考博客:http://blog.csdn.net/bear_huangzhen/article/details/47168123

bitmap转base64格式的字符串

/**
* 将bitmap转为base64格式的字符串
* @param bit 传入的bitmap
* @return
*/
public String BitmapToStrByBase64(Bitmap bit){
ByteArrayOutputStream bos=new ByteArrayOutputStream();
bit.compress(Bitmap.CompressFormat.JPEG, 100, bos);//参数100表示不压缩
byte[] bytes=bos.toByteArray();
return Base64.encodeToString(bytes, Base64.DEFAULT);
}


base64格式的字符串转bitmap

public static Bitmap base64ToBitmap(String base64Data) {
byte[] bytes = Base64.decode(base64Data, Base64.DEFAULT);
Bitmap bitmap = BitmapFactory.decodeByteArray(bytes, 0, bytes.length);
return bitmap;
}


bitmap转byte[]数组

/**
* bitmap 转  byte[]数组
*/
public byte[] bitmapTobyteArray(Bitmap bitmap){
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.PNG, 100, baos);
byte[] bytes = baos.toByteArray();
return bytes;
}


byte[]转bitmap

/**
* byte[]数组   转   bitmap
*/
public Bitmap byteArrayToBitmap(byte[] bytes){
Bitmap bitmap = BitmapFactory.decodeByteArray(bytes, 0, bytes.length);
return bitmap;
}


bitmap转drawable

/**
* bitmap 转  Drawable
*/
public Drawable bitmapToDrawable(Bitmap bitmap){
BitmapDrawable bd = new BitmapDrawable(bitmap);
Drawable img = bd;
return img;
}


drawable转bitmap

/**
* Drawable 转  bitmap
*/
public Bitmap drawableToBitmap(Drawable img){
BitmapDrawable bd = (BitmapDrawable) img;
Bitmap bitmap = bd.getBitmap();
return bitmap;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐