Exibir uma imagem em Java

Rupam Yadav 12 outubro 2023
  1. Exibir uma imagem em Java usando JLabel.setIcon()
  2. Exibir uma imagem em Java usando a biblioteca ImageJ
Exibir uma imagem em Java

Podemos mostrar uma imagem usando várias maneiras em Java. A seguir, veremos como exibir uma imagem em Java usando dois métodos.

Exibir uma imagem em Java usando JLabel.setIcon()

No primeiro exemplo, usamos a classe JLabel da biblioteca Swing. JLabel estende JComponent, e podemos anexar este componente a um JFrame. Para ler o arquivo de imagem, usamos a classe File e passamos o caminho da imagem. Em seguida, convertemos a imagem em um objeto BufferedImage usando ImageIO.read(). Agora criamos um ícone para ser mostrado no JLabel.

Para mostrar o ícone do rótulo, precisamos de um objeto JFrame com um FlowLayout e um tamanho de 500 x 500. O tamanho pode ser ajustado de acordo com nossas necessidades. Agora criamos um objeto JLabel e definimos seu ícone usando a função JLabel.setIcon(). Em seguida, adicionamos o componente jLabel ao jFrame e definimos a visibilidade do quadro como verdadeira.

import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.*;

public class DisplayImage {
  public static void main(String[] args) throws IOException {
    File file = new File("C:\\Users\\User1\\Pictures\\Camera Roll\\java.png");
    BufferedImage bufferedImage = ImageIO.read(file);

    ImageIcon imageIcon = new ImageIcon(bufferedImage);
    JFrame jFrame = new JFrame();

    jFrame.setLayout(new FlowLayout());

    jFrame.setSize(500, 500);
    JLabel jLabel = new JLabel();

    jLabel.setIcon(imageIcon);
    jFrame.add(jLabel);
    jFrame.setVisible(true);

    jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
}

Produção:

exibir uma imagem em java

Exibir uma imagem em Java usando a biblioteca ImageJ

Neste programa, usamos uma poderosa biblioteca de processamento de imagens chamada ImageJ. Para usá-lo, primeiro importamos o repositório maven e a dependência em pom.xml.

<repositories>
    <repository>
        <id>scijava.public</id>
        <url>https://maven.scijava.org/content/groups/public</url>
    </repository>
</repositories>
<dependency>
    <groupId>net.imagej</groupId>
    <artifactId>ij</artifactId>
    <version>1.53j</version>
</dependency>

Nosso objetivo é mostrar uma imagem, e ImageJ torna isso simples para nós. A seguir está o código onde primeiro chamamos uma função estática openImage() da classe IJ e passamos o caminho da imagem nela como um argumento. Observe que escrevemos apenas o nome da imagem com suas extensões porque nossa imagem está no mesmo diretório.

IJ.openImage() retorna um objeto ImagePlus. Agora chamamos o método show() usando o objeto imagePlus. Podemos ver que a saída mostra uma imagem em um quadro.

import ij.IJ;
import ij.ImagePlus;

public class DisplayImage {
  public static void main(String[] args) {
    ImagePlus imagePlus = IJ.openImage("mountains.jpeg");
    imagePlus.show();
  }
}

Produção:

exibir uma imagem em java

Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

Artigo relacionado - Java Swing