Android图片二进制与Bitmap、Drawable之间的转换

Java代码

public byte[]

getBitmapByte(Bitmap bitmap){

ByteArrayOutputStream out

= new ByteArrayOutputStream();

bitmap.compress(Bitmap.CompressFormat.JPEG, 100, out);

try {

out.flush();

out.close();

} catch (IOException e)

{

e.printStackTrace();

}

return out.toByteArray();

}

public Bitmap getBitmapFromByte(byte[] temp){

if(temp != null){

Bitmap bitmap =

BitmapFactory.decodeByteArray(temp, 0, temp.length);

return bitmap;

}else{

return null;

}

}

public byte[] getBitmapByte(Bitmap

bitmap){

ByteArrayOutputStream out = new

ByteArrayOutputStream();

bitmap.compress(Bitmap.CompressFormat.JPEG, 100,

out);

try {

out.flush();

out.close();

} catch (IOException e)

{

e.printStackTrace();

}

return out.toByteArray();

}

public

Bitmap getBitmapFromByte(byte[] temp){

if(temp != null){

Bitmap bitmap =

BitmapFactory.decodeByteArray(temp, 0, temp.length);

return

bitmap;

}else{

return null;

}

}

Java代码

public

static Bitmap drawableToBitmap(Drawable drawable){

int width = drawable.getIntrinsicWidth();

int height =

drawable.getIntrinsicHeight();

Bitmap bitmap = Bitmap.createBitmap(width, height,

drawable.getOpacity() != PixelFormat.OPAQUE ? Bitmap.Config.ARGB_8888

: Bitmap.Config.RGB_565);

Canvas canvas = new Canvas(bitmap);

drawable.setBounds(0,0,width,height);

drawable.draw(canvas);

return bitmap;

}

public static Bitmap

drawableToBitmap(Drawable drawable){

int width = drawable.getIntrinsicWidth();

int height = drawable.getIntrinsicHeight();

Bitmap bitmap =

Bitmap.createBitmap(width, height,

drawable.getOpacity() != PixelFormat.OPAQUE ?

Bitmap.Config.ARGB_8888

: Bitmap.Config.RGB_565);

Canvas canvas = new

Canvas(bitmap);

drawable.setBounds(0,0,width,height);

drawable.draw(canvas);

return bitmap;

}

Java代码

Drawable drawable = new FastBitmapDrawable(bitmap);

Android图片缓存之Bitmap详解

前言: 最近准备研究一下图片缓存框架,基于这个想法觉得还是先了解有关图片缓存的基础知识,今天重点学习一下Bitmap.BitmapFactory这两个类. 图片缓存相关博客地址: Android图片缓 ...

【转】Android中dip(dp)与px之间单位转换

Android中dip(dp)与px之间单位转换 dp这个单位可能对web开发的人比较陌生,因为一般都是使用px(像素)但是,现在在开始android应用和游戏后,基本上都转换成用dp作用为单位了,因 ...

Android图片缓存之Bitmap详解(一)

前言: 最近准备研究一下图片缓存框架,基于这个想法觉得还是先了解有关图片缓存的基础知识,今天重点学习一下Bitmap.BitmapFactory这两个类. Bitmap: Bitmap是Android ...

Android 图片文件和Bitmap之间的转换

String filePath="c:/01.jpg"; Bitmap bitmap=BitmapFactory.decodeFile(filePath); 如果图片过大,可能导致 ...

Android笔记之dp与px之间的转换以及LayoutParams

dp与px之间的转换公式 px = dp * (dpi / 160) dp = px / (dpi / 160) 其中dpi的获取方式如下 private void getDpi() { Displa ...

byte、二进制、十进制数值之间的转换

项目中遇到将字节数据文件解析成可展示的十进制,经过调查和测试得出下面的转换方法 1.将byte值转换为二进制字符串: byte byteValue = -1; // 将byte转换为8位二进制字符串 ...

Android图片缓存之Lru算法

前言: 上篇我们总结了Bitmap的处理,同时对比了各种处理的效率以及对内存占用大小.我们得知一个应用如果使用大量图片就会导致OOM(out of memory),那该如何处理才能近可能的降低oom发 ...

Android图片缓存之Glide进阶

前言: 前面学习了Glide的简单使用(Android图片缓存之初识Glide),今天来学习一下Glide稍微复杂一点的使用. 图片缓存相关博客地址: Android图片缓存之Bitmap详解 And ...

Android图片缓存之初识Glide

前言: 前面总结学习了图片的使用以及Lru算法,今天来学习一下比较优秀的图片缓存开源框架.技术本身就要不断的更迭,从最初的自己使用SoftReference实现自己的图片缓存,到后来做电商项目自己的实 ...

随机推荐

javascript的函数

1.函数的声明 (1) function命令方式 function fn(){}; (2) 函数的表达式 采用变量赋值的方式,function命令后面不带有函数名.如果加上函数名,那么该函数名只在函数 ...

C#调用NPOI组件导出Excel表格

把一个List集合的数据导出到Excel表格中 public static string RenderToExcel(List datas) { MemoryStr ...

BZOJ 1855 股票交易(单调队列优化DP)

题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=1855 题意:最近lxhgww又迷上了投资股票, 通过一段时间的观察和学习,他总结出了股票 ...

C++仿函数(functor)详解

C++仿函数(functor)详解 所谓的仿函数(functor),是通过重载()运算符模拟函数形为的类. 因此,这里需要明确两点: 1 仿函数不是函数,它是个类: 2 仿函数重载了()运算符,使得它 ...

android中最先被执行的activity

像C.C++.JAVA都有一个主函数作为程序的入口点,但是Android中并没有一个明确的主窗口,那么在有多个Activity的情况下,最先被执行的是哪个呢?这完全取决于配置文件AndroidMain ...

hdu 2553 N皇后问题 (经典DFS)

题目链接:点击链接 思路:用一维数组hang[num] = i,num表示第num行,i表示第i列,计算n = 1~10皇后的不同放置数量,然后打表 #include # ...

Jquery Ajax调用aspx页面实例

目前,我会的几种asp.net界面与后台代码交互方式有几种: 1.webform+服务器控件交互: 2.webform+jquery+ajax+一般处理程序交互: 3.webform+jquery+a ...

如何使用jQuery动态的在body里添加script标签?

var script = document.createElement('script'); script.type = 'text/jacascript'; script.src = 'url'; ...

【floyd】 poj 2240

#include #include #include #include usi ...

C#语言和SQL Server第十章笔记

第十章 :使用关键字模糊查询 笔记 一:使用关键字 :LIKE  BETWEEN  IN进行模糊查询 通配符:  一类字符,代替一个或多个真正的字符 与LIKE关键字一起使用 通配符: 解释 实例 符 ...

android图片转换为二进制流,Android图片二进制与Bitmap、Drawable之间的转换相关推荐

  1. 【C语言】之把yuyv422格式的图片转换为pnm格式的图片

    平台:Linux /***************************************************************************** 文件名:Yuyv422T ...

  2. java 字节流读取图片,字符流读取,二进制读取

    这两天在学习java中如何对文件进行读取,首先当然是对最简单的文件txt文件进行操练了.并且,逐渐的了解了Java中IO流是如何对文件进行操作的 操练了一段时间,便开始了对图片进行读取,开始的想法如下 ...

  3. python将图像转换为8位单通道_使用Python将图片转换为单通道黑白图片

    本文介绍如何使用python将图片转换为纯黑白的单通道图片.文中用到的脚本支持彩色.灰度.带alpha通道的输入图片以及SVG矢量图,支持调整输出图片大小以及设置灰度阈值. 最后介绍如何输出SSD13 ...

  4. php接收二进制流,php接收二进制流【转】

    标签:binary   文件   com   post   进制   二进制   tip   form   生成文件 /** 二进制流生成文件 * $_POST 无法解释二进制流,需要用到 $GLOB ...

  5. java页面展示流式图片,javascript瀑布流式图片懒加载实例解析与优化

    之前写过一版图片"懒加载"的文章,刚好周末在整理文件的时候,大概又看了一遍之前写的代码发现有很多可以优化的地方. 这篇文章主要就是结合上篇<javascript瀑布流式图片懒 ...

  6. Android RecyclerView实现瀑布流,图片自适应高度,不闪烁,解决位置交换

    记录一下以前自己代码中用到过代码效果,也做个备份,省的以后代码找不到,大家也可以参考参考,也许看过网上某些笔记,但是不记得了链接了,有问题可以联系本人 以下会写从布局到java代码以及用到的工具类都写 ...

  7. android 水平方向瀑布流,Android RecyclerView(瀑布流)水平/垂直方向分割线

     Android RecyclerView(瀑布流)水平/垂直方向分割线 Android RecyclerView不像过去的ListView那样随意的设置水平方向的分割线,如果要实现Recycle ...

  8. IOS-—UICollectionView使用综述(二 )(基础篇--画廊展示图片,瀑布流展示图片)

    效果图 : 画廊: 瀑布流: 1.画廊 1.1 简述 这里是通过纯代码的方式进行添加操作 1.2 创建设置UICollectionView #import "ViewController.h ...

  9. 批量转换方法!将JPG图片转换为PNG格式的图片

    图片的格式有很多种,其次,图片的格式是可以转换的,比如说将JPG转成PNG,BMP转成JPG等等.图片格式的转换,需要借助专业的辅助工具--下图高手,下面就以将JPG图片批量转换为PNG格式为例,一起 ...

最新文章

  1. (广州)软件开发定制服务,工作流引擎 OA 库存管理系统
  2. redis集群模式的工作原理
  3. matlab 实验6 高层绘图操作,实验06_高层绘图操作(第5章).doc
  4. linux编译openssl
  5. centos图形化桌面的文件在哪_Windows 远程连接 CentOS 7 图形化桌面
  6. 浅谈 maxMemory , totalMemory , freeMemory 和 OOM 与 native Heap
  7. linux驱动静态分配内存,Linux驱动设计——内存与IO访问
  8. Mybatis insert返回主键ID
  9. MyEclipes 设置代码自动提示
  10. C#LeetCode刷题之#13-罗马数字转整数(Roman to Integer)
  11. Spring 定时器结合线程池
  12. Waymo也商业化了!“早期乘客”项目开始测试收费,凤凰城人民掏了腰包
  13. 算法学习之路|反转链表
  14. vue 项目安装axios报错
  15. 计算机快速换界面,老板来了?这些好用的Windows快捷键让你一秒切换操作界面!-页面设置快捷键...
  16. 深度学习在视频行为识别中应用
  17. CVE-2019-0708高危漏洞,各家安全厂商的扫描修复方案
  18. flask手写汉字识别网站(已开源)
  19. 数据挖掘 NO.2 模型效果评估
  20. Java系统插件开发原理与实例

热门文章

  1. 西安理工的计算机研究所有必要考吗,6所“难考”的普通理工大学! 适合考上不211的同学, 毕业收入高!...
  2. 《宗吾臆谈》--李宗吾
  3. wince怎么刷carplay_WinCE 手机互联
  4. 戴尔dell的R 720服务器设置u盘启动
  5. 【ArcGIS微课1000例】0045:ArcGIS制图模板的自定义与使用方法
  6. fastdfs分布式文件系统文件上传、下载、删除交互过程讲解
  7. ASIC加速:如何优化AI算法,让芯片更加智能?
  8. Android、Java,关于交通部808协议、905协议、794协议等部标协议、出租车协议、网约车协议、网约车智能终端、出租车智能终端的简要说明
  9. FsFont--通过学习细粒度局部样式生成少样本字体
  10. 轻量级Kubernetes之k3s:5:集群搭建