gpt4 book ai didi

java - 如何从包含像素的数组创建 BufferedImage?

转载 作者:行者123 更新时间:2023-12-02 03:45:04 25 4
gpt4 key购买 nike

我使用方法getRGB()BufferedImage获取像素。像素存储在名为 data[] 的数组中。对数据数组进行一些操作后,我需要再次创建一个 BufferedImage ,以便我可以将其传递给一个模块,该模块将从该数据数组中显示修改后的图像,但我坚持使用它。

最佳答案

I get the pixels from the BufferedImage using the method getRGB(). The pixels are stored in array called data[].

请注意,这可能会非常慢。如果您的 BufferedImage 支持它,您可能需要访问底层 int[] 并直接从那里复制/读取像素。

例如,要将您的data[]快速复制到新BufferedImage的基础int[]中:

BufferedImage bi = new BufferedImage( w, h, BufferedImage.TYPE_INT_ARGB );
final int[] a = ( (DataBufferInt) res.getRaster().getDataBuffer() ).getData();
System.arraycopy(data, 0, a, 0, data.length);

当然,您要确保您的data[]包含与 BufferedImage 具有相同表示形式的像素(本例中为 ARGB)。

关于java - 如何从包含像素的数组创建 BufferedImage?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9396159/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com