繁体   English   中英

从BufferedImage获取像素数据

[英]Get pixel data from a BufferedImage

我需要从BufferedImage获取像素数据,以便可以从数据重新创建图像。 我调查了Raster ,但似乎没有包含我需要的信息。 如何从BufferedImage获取数据,以便无需原始文件即可重新创建图像?

您应该查看此问题的答案

Java-从图像获取像素数组

一种方法是使用

ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageIO.write(originalImage, "jpg", baos);
baos.flush();
byte[] imageBytes = baos.toByteArray();
baos.close();

现在,当您要根据使用的数据创建一个新的BufferedImage

ByteArrayInputStream bais = new ByteArrayInputStream(imageBytes);
BufferedImage newImage = null;
try {
    newImage = ImageIO.read(bais);
} catch (IOException e) {
    // handle exception
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM