以下内容Sinfrancis版权所有,专注请注明来自 http://mdev.cc/dev
通过ByteArrayOutputStream
转换
public byte[] getBytesFromBitmap(Bitmap bmp) {
try {
int height = bmp.getHeight();
int width = bmp.getWidth();
int[] rgbdata = new int[width * height];
ByteArrayOutputStream bos = new ByteArrayOutputStream();
DataOutputStream dos = new DataOutputStream(bos);
bmp.getARGB(rgbdata, 0, width, 0, 0, width, height);
for (int i = 0; i < rgbdata.length; i++) {
if (rgbdata[i] != -1) {
dos.writeInt(rgbdata[i]);
dos.flush();
}
}
bos.flush();
return bos.toByteArray();
} catch (Exception ex) {
return null;
}
}
分享到:
相关推荐
总的来说,将Bitmap转换为Byte数组是图形处理和数据存储中常见的操作,它在各种场景下都有应用,比如网络传输、数据库存储、序列化等。理解并掌握这个过程,对于进行高效的图像处理和数据操作至关重要。
在Android开发中,Bitmap是用于表示图像数据的一种对象,它在内存中占用较大空间,因此在处理图片时,我们有时需要将其转换为byte数组(byte[]),以便于存储、传输或者在网络流中使用。这个过程涉及到图像数据的...
在C#编程语言中,将byte数组转换为8bit灰度图像是一项常见且重要的技能,尤其是在处理图像数据或开发图像处理应用时。本文将详细解析这一过程,包括关键概念、技术细节以及具体实现步骤。 ### 关键概念 1. **8bit...
在网络传输或保存到数据库时,将Bitmap转换为byte数组可以降低存储和传输的成本。 下面是如何在这些类型之间进行转换: 1. Drawable到Bitmap: 要将Drawable转换为Bitmap,可以使用Drawable的`copyBounds()`方法...
在处理图像时,我们可能会遇到需要在不同的数据类型之间转换的情况,比如从Bitmap到Stream,再到byte数组,最后再还原回Bitmap。这样的转换在上传图片、存储图片数据或在网络中传输时非常常见。本篇文章将详细介绍...
C#byte数组与Image的相互转换实例代码 功能需求: 1、把一张图片(png bmp jpeg bmp gif)转换为byte数组存放到数据库。 2、把从数据库读取的byte数组转换为Image对象,赋值给相应的控件显示。 3、从图片byte数组...
将Bitmap转换为byte数组,通常是为了便于在网络上传输或存储到文件中。这个过程涉及压缩,可以选择不同的压缩格式和质量。 ```java private byte[] Bitmap2Bytes(Bitmap bm) { ByteArrayOutputStream baos = new ...
之前写了个User类(实现了Serializable接口),类变量里有Bitmap类型的头像图片,Bitmap导致序列化不成功,报 “android....Bitmap转换成byte数组 private byte[] bitmap2Bytes(Bitmap bitmap) { ByteArrayOutputS
因此,我们需要先将Bitmap转换为byte数组,然后通过Intent的putExtra()方法传递这个字节数组。接收端再将接收到的字节数组还原为Bitmap。 以下是具体实现步骤: 1. **Bitmap转byte数组**: 在发送端,我们创建一...
位图(Bitmap,通常缩写为BMP)是一种常见的图像文件格式,广泛应用于Windows操作系统以及许多其他软件中。BMP文件格式是未经压缩的,它存储了图像的每个像素的颜色信息,因此文件体积相对较大。在C++编程中,生成...
### Halcon_Bitmap转换:深度解析与实践指南 在图像处理和机器视觉领域,Halcon作为一款强大的软件包,提供了丰富的工具和算法,用于解决图像分析、特征检测、模式识别等复杂任务。然而,面对特定的应用场景,开发...
`Bitmap2Bytes(Bitmap bm)`方法将Bitmap转换为byte数组。它创建一个`ByteArrayOutputStream`,然后使用`compress()`方法将Bitmap压缩成PNG格式(可选择其他格式),压缩质量设置为100(即无损压缩),最后将`...
在Android开发中,图片资源的处理是常见的需求之一,涉及到多种数据类型之间的转换,包括`Drawable`、`Bitmap`、`byte[]`等。本文将详细介绍这些类型之间的转换方法,以及如何实现灰度图像的转换。 ### 1. `...
本文将深入探讨一个在 Delphi 开发环境中使用的函数,该函数用于将 BMP 图像格式转换为 RGB Byte 数组。通过此函数,我们可以方便地处理图像数据,进行各种图像处理任务,如颜色变换、图像识别等。 #### 函数定义与...
3. **Bitmap转换为byte数组**: 当需要将Bitmap保存到内存或发送到服务器时,可以将其转换为byte数组: ```java private byte[] Bitmap2Bytes(Bitmap bm) { ByteArrayOutputStream baos = new ...
在将`Bitmap`数据在网络上传输或存储到文件中时,通常需要将其转换为`byte[]`数组。 ```java private byte[] Bitmap2Bytes(Bitmap bm) { ByteArrayOutputStream baos = new ByteArrayOutputStream(); bm.compress...
在IT行业中,尤其是在编程领域,将图片转换为字符串数组是一个常见的需求,特别是在处理图像数据、进行图像识别或传输时。这个任务通常涉及到图像处理和数据编码。本篇将深入探讨如何使用C#语言来实现这一功能。 ...
首先,将Bitmap转换为Byte数组,然后将其作为额外参数放入Intent。在目标Activity中,再将Byte数组还原为Bitmap。但是,对于大Bitmap,这可能导致内存问题。 ```java // 发送Activity Bitmap bitmap = ...; byte[] ...
1. **Bitmap转byte[]**:Bitmap对象可以通过`compress()`方法压缩成字节数组,通常会选择特定的格式如PNG或JPEG,并设置压缩质量。例如,`bm.compress(Bitmap.CompressFormat.PNG, 100, baos)`将Bitmap对象压缩为PNG...