如何克隆BufferedImage

我有一个其中包含许多bufferedimages的对象,我想创建一个新对象,将所有bufferedimages复制到新对象中,但是这些新图像可能会更改,并且我不希望通过更改原始对象图像来更改新对象图像。

明白了吗?

这有可能做到吗,有人可以建议一个好方法吗?我曾经想到过getSubImage,但在某处阅读过,该子映像的任何更改都被重新关联回了父映像。

我只希望能够获得BufferedImage的全新完全独立副本或克隆

回答:

像这样吗

static BufferedImage deepCopy(BufferedImage bi) {

ColorModel cm = bi.getColorModel();

boolean isAlphaPremultiplied = cm.isAlphaPremultiplied();

WritableRaster raster = bi.copyData(null);

return new BufferedImage(cm, raster, isAlphaPremultiplied, null);

}

以上是 如何克隆BufferedImage 的全部内容, 来源链接: utcz.com/qa/424424.html

回到顶部