我正在尝试制作一个从文件夹中获取 jpeg 图像(4 张图像)并将它们合并为一个大图像的工具。
for (int i = desde; i < hasta + 1; i++) {
for (int j = 0; j < 4; j++) {
foto = ImageIO.read(new File("C:/picYou/Pic you_diciembre 06 2012/Pic you_take" + i + "/" + (j + 1) + ".jpg"));
g.drawImage(foto, 300, 300 + j * (altoFoto + 20), null);
foto.flush();
foto = null;
}
File output = new File("C:/picYou/" + i + ".jpg");
ImageIO.write(img, "jpg", output);
g.finalize();
g.dispose();
}
g 是 graphics2d 对象, foto 是 BufferedImage。
问题是,即使我在加载另一个图像之前刷新图像并使其为空,图像使用的内存也没有被释放。如您所见,每张图片都以“照片”加载,有什么方法可以提高效率吗?谢谢!