无论如何,使用相应的字节数组或ByteArrayOutputstream组合两个位图

时间:2015-05-07 10:31:53

标签: java android bytearrayoutputstream

这可能听起来很傻但我开始尝试这只是因为我很想知道ByteArrayOutputStreambyte数组如何存储有关Bitmap的信息。我知道我可以轻松地使用Bitmap合并两个或更多Canvas,但是一旦将Bitmap转换为ByteArrayOutputStream(使用JPEG压缩),就有办法合并Bitmap 1}}使用ByteArrayOutputStream。我尝试组合两个streams和相应的byte数组,但我总是只得到一个位图作为输出(出现的位图取决于组合的顺序)。有人可以向我解释一下ByteArrayOutputStream的工作原理。

谢谢。

1 个答案:

答案 0 :(得分:-1)

这是Java!

在另一个之后写一个流。

image1.write(image2.toByteArray());

如果您只是按顺序排列InputStream,则可以构建SequenceInputStream

InputStream bothBitmaps = new SequenceInputStream(
    new ByteArrayInputStream(image1.toByteArray()),
    new ByteArrayInputStream(image2.toByteArray()));