GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Adicionar imagens jpg em um BufferedImage


#1

Pessoal, tem como adicionar imagem.jpg que está em um diretório numa BufferedImage?
Eu precisava de um array de BufferedImage e add várias imagens.
E depois add o BufferedImagem em um JPanel.
Daí quando o usuário clica no botão avançar vai pra próxima imagem.
Tem como fazer isso com BufferedImage e JPanel?


#2

File fileImg1 = new File("imagem1.jpg");
File fileImg2 = new File("imagem2.jpg");
BufferedImage img1 = ImageIO.read(fileImg1);
BufferedImage img2 = ImageIO.read(fileImg2);

Se voce seguiu a dica e olhou o JImagePanel que falei voce pode ao evento de um botao modificar a imagem dele com essas instancias que voce tem.


#3

Obrigado Mark.

Mark, eu não estou conseguindo exibir minha imagem.
Tá dando exception.

import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JPanel;
public class LM_JImage extends JPanel{
	private BufferedImage m_imagem = null;
	public LM_JImage(BufferedImage img) {
        setImage(img);
	}
	public final void setImage(BufferedImage img)
    {
        this.m_imagem = img;
        invalidate();
    }
	public BufferedImage getM_imagem() {
		return m_imagem;
	}
}

Daí estou atribuindo uma imagem e setando na minha classe LM_JImage

File fileImg1 = new File("img/ECONOMIA001.jpg");   
		m_imagens = ImageIO.read(fileImg1);  
m_JImage = new LM_JImage(m_imagens);
m_janela_centro.add(m_JImage);   
		m_janela_centro.repaint();   
		m_janela_centro.validate();

A exception diz que o erro está nesta linha do codigo m_imagens = ImageIO.read(fileImg1);

Exception in thread "main" javax.imageio.IIOException: Can't read input file!
	at javax.imageio.ImageIO.read(Unknown Source)
	at LM_Tela.<init>(LM_Tela.java:51)
	at LM_Press_Segment.main(LM_Press_Segment.java:9)

Vc sabe pq está dando exception?

Obrigado


#4

Eu tinha colocado o endereço errado.

Mas agora o programa abre em branco.
Não tá aparecendo a imagem.
Vc sabe o que eu estou fazendo de errado?

Obrigado


#5

Voce nao sobreescreveu o método paintComponent(Graphics g) para exibir a imagem.

Usa a classe do ViniGodoy não tente copiar uma parte e fazer funcionar.


#6

Caraca, funcionou.
Obrigado Mark.

Putz, mas a imagem tá minuscula.
Não to conseguindo aumentar a parada.
Tem como aumentar a imagem Mark?


#7

Tem alguns parametros que não lembro como muda igual ao plano de fudo do windows (lado a lado, centralizado ou extendido).


#8

Putz, pior que eu pesquisei e tbm não achei nada.
Será que alguém sabe como aumentar o tamanho da minha imagem?


#9

:smile: Ola pessoal, eu estou desenvolvendo meu TCC e pra isso tenho que aprender a carregar e manipular imagens.
Gostaria que alguem me explicasse exatamente o que acontece nesse trecho de codigo para carregar a imagem.

BufferedImage img = ImageIO.read(new File("imagem/img.jpg"));

E tambem que pudesse me falar um pouco sobre o BufferedImage

Desde já agradeço .... :wink:


#10

Oi Dehzinha. Leia aqui:
http://www.pontov.com.br/site/index.php/java/48-java2d/111-trabalhando-com-imagens


#11

Ola ViniGodoy

Muito obrigada pela atenção, era exatamente o que estava procurando.

Bom dia :smiley:


#12