当前位置: 首页 > 面试题库 >

用Java显示图像

苗学民
2023-03-14
问题内容

我想显示图像,但不知道该怎么办。我是否需要安装某些库文件还是简单地完成安装,我不知道。实际上我想进行图像处理,但是首先我必须接受图像输入并显示图像,然后才能获得图像处理的效果作为输出并确定其(算法)是否正确。我只安装了eclipse。我也曾在Google中搜索过,但是无论他们提出什么建议都无法正常工作。我是否必须安装某些东西。

我尝试了以下代码:

public class ImageTest {
    public static void main(String[] args){
        EventQueue.invokeLater(new Runnable() {
            public void run(){
                ImageFrame frame = new ImageFrame();
                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                frame.setVisible(true);
            }
        }
        );
    }
}

class ImageFrame extends JFrame{
    public ImageFrame(){
        setTitle("ImageTest");
        setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);

        ImageComponent component = new ImageComponent();
        add(component);
        getContentPane().validate();
        getContentPane().repaint();
    }

    public static final int DEFAULT_WIDTH = 300;
    public static final int DEFAULT_HEIGHT = 200;
}

class ImageComponent extends JComponent{
    private static final long serialVersionUID = 1L;
    private Image image;
    public ImageComponent(){
        try{
            File image2 = new File("bishnu.jpg");
            image = ImageIO.read(image2);
        } catch (IOException e){
            e.printStackTrace();
        }
    }
    public void paintComponent (Graphics g){
        if(image == null) return;
        int imageWidth = image.getWidth(this);
        int imageHeight = image.getHeight(this);

        g.drawImage(image, 50, 50, this);

        for (int i = 0; i*imageWidth <= getWidth(); i++)
            for(int j = 0; j*imageHeight <= getHeight();j++)
                if(i+j>0) g.copyArea(0, 0, imageWidth, imageHeight, i*imageWidth, j*imageHeight);
    }
}

它只是显示一个图形窗口,而不能显示图像“ bishnu.jpg”

我应该在Eclipse中安装任何东西吗?但是我认为不需要安装任何东西。


问题答案:

调整路径后,运行代码将为我显示一张图像。您可以验证图像路径是否正确,例如尝试绝对路径吗?



 类似资料:
  • 我想显示图像,但不知道该怎么做。我不知道是必须安装一些库文件,还是简单地安装就可以了。实际上我想做图像处理,但首先我必须接受图像输入并显示图像,然后我可以得到图像处理的效果作为输出,并决定它(算法)是否正确。我只安装了eclipse。我也在谷歌上搜索过,但是无论他们建议什么都不管用。要么我得装点什么,要么不装。 我已经尝试了以下代码: 它只是显示一个图形窗口,但不能显示图像“bishnu.jpg”

  • 我试着用IPython。显示以下代码: 我还尝试将matplotlib与以下代码一起使用: 在这两种情况下,都不会显示任何内容,甚至不会显示错误消息。

  • 问题内容: 我正在尝试加载图标,但它不会显示。该jpanel位于boxlayout中。我不知道这是否使事情搞砸了。这很奇怪,因为除了图标图像,我还能添加几乎所有其他内容。我通过调试器,searchIcon显示宽度和高度为-1。这是否意味着未加载图像? 问题答案: 您的图像文件必须与运行应用程序所在的目录位于同一目录中。 如果它实际上与进行调用的类在同一目录中,则可以使用: 如果它在任意位置,则需要

  • 我正在开发一个棋盘,有一个问题。我试图用一个图像来表示一个象棋方块。但是图像没有显示出来。 这是有问题的代码: 所有显示的都是碎片,没有方块,提前感谢。

  • 问题内容: 有时我需要以直方图的形式显示图像数据的表示形式。我对访问图像数据的方式特别感兴趣。我熟悉,其中包括直方图支持,但我会考虑其他方法。 问题答案: 下面的示例使用多种技术来创建任意图像的RGB直方图: 该方法从中提取每个色带的值BufferedImage。 该方法将每个频段的计数添加到。 一个替换默认,如图所示这里。 定制提供每个系列所需的颜色;它包含半透明的颜色。 一种变型,讨论在这里,

  • 问题内容: 如何显示在PHP中使用file_get_contents检索到的图像? 我需要修改标题并仅回显它吗? 谢谢! 问题答案: 我需要修改标题并仅回显它吗? 究竟。 之后发送和数据。