专注Java教育14年 全国咨询/投诉热线:400-8080-105
动力节点LOGO图
始于2009,口口相传的Java黄埔军校
首页 学习攻略 Java学习 使用Java显示图片的方法

使用Java显示图片的方法

更新时间:2022-04-12 10:39:34 来源:动力节点 浏览6133次

我们可以在 Java 中使用多种方式显示图像。下面我们将看到如何使用两种方法在 Java 中显示图像。

使用 Java 显示图像JLabel.setIcon()

在第一个示例中,我们使用JLabelSwing 库的类。JLabelextends JComponent,我们可以将此组件附加到JFrame. 要读取图像文件,我们使用Java File类并传递图像的路径。接下来,我们BufferedImage使用 将图像转换为对象ImageIO.read()。现在我们创建一个图标以显示在JLabel.

为了显示标签图标,我们需要一个大小为 500 x 500 的JFrame对象FlowLayout。大小可以根据我们的需要进行调整。现在我们创建一个对象并使用函数JLabel设置它的图标。JLabel.setIcon()然后我们添加jLabel组件jFrame并将框架的可见性设置为true。

import javax.imageio.ImageIO;
import javax.swing.*;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
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);
    }
}

输出:

ImageJ使用库在Java中显示图像

在这个程序中,我们使用了一个强大的图像处理库,叫做ImageJ. 要使用它,我们首先将 maven 存储库和依赖项导入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>

我们的目标是展示一张图片,ImageJ让我们觉得它很简单。openImage()以下是我们首先从类中调用静态函数IJ并将其中图像的路径作为参数传递的代码。请注意,我们只写了带有扩展名的图像名称,因为我们的图像位于同一目录中。

IJ.openImage()返回一个ImagePlus对象imagePlus。现在我们使用对象调用show()方法。imagePlus我们可以看到输出显示了帧中的图像。

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

输出:

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>