Criar BufferedImage a partir de outros

Gente, eu tenho 5 metodos e cada um deles, criam 1 BufferedImage com uma determianada imagem, ou seja, se eu executar os 5 metodos eu tenho 5 BufferedImage diferente. Mas fora esses 5 metodos, eu quero ter um 6 que cria um outro BufferedImage que seja todos os 5 desenhados em um só.
Qual é a maneiram mais simples de se fazer isso?

Crie um novo BufferedImage.
Chame createGraphics nela.
Use o objeto Graphics para desenhar as 5 imagens.
:slight_smile:

então, mas eu vou ter que redesenhar novamante as 5 imagens???

Mas não está redesenhando as 5 imagens, vc está desenhando as 5 em uma nova.

tipo assim, fiz de cabeça, nem roda o código, só para você ter uma idéia.


// Pega as imagens
BufferedImage1 img1 = getImg1();
BufferedImage1 img2 = getImg2();
BufferedImage1 img3 = getImg3();
BufferedImage1 img4 = getImg4();
BufferedImage1 img5 = getImg5();

// Cria uma nova imagem e desenha as 5 nelas

BufferedImage imgComTodas = new BufferedImage(/*Não lembro o construtor de cbeça*/);

Graphics2D g = imgComTodas.createGraphics();

// Lembre-se de calcular o x e y para que uma não sobreponha a outra
g.drawImage(img1, null, x, y);
g.drawImage(img2, null, x, y);
g.drawImage(img3, null, x, y);
g.drawImage(img4, null, x, y);
g.drawImage(img5, null, x, y);

outra coisa, eu tenho o seguinte trecho de código:

 bf6 =  new BufferedImage(600,600,BufferedImage.TYPE_INT_ARGB);
Graphics2D gr = bf6.createGraphics();
        wr = bf.getRaster();
        wr.setDataElements(0,0,600,600,vMap);// onde vMap é um vetor com a minha paleta de cores

Como faço pra salvar essa imagem q vai ser criada no buffer em um arquivo png?
obrigada!

Utilize o método write da classe ImageIO

[]s

isso!! valeu tks!!!

o que exatamente vc quer fazer?
desenvolvi uma api de PDI em meu TCC uma dessas posso te ajudar…