本文介绍了在获取Java图像的高度和宽度没有的ImageObserver的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

限时删除!!

我试图让高度宽度 Java中的图像(通过URL)中没有的ImageObserver 。
我现在的code是:

I am trying to get the height and width of images (via a url) in Java without an ImageObserver.My current code is:

public static void main(String[] args) throws IOException {
    // TODO Auto-generated method stub

    File xmlImages = new File("C:\\images.xml");
    BufferedReader br = new BufferedReader(new FileReader(xmlImages));
    File output = new File("C:\\images.csv");
    BufferedWriter bw = new BufferedWriter(new FileWriter(output));
    StringBuffer sb = new StringBuffer();
    String line = null;
    String newline = System.getProperty("line.separator");
    while((line = br.readLine()) != null){
        if(line.contains("http")){
            URL url = new URL(line.)
            Image img = Toolkit.getDefaultToolkit().getImage(url);
            sb.append(line + ","+ img.getHeight(null) + "," + img.getWidth(Null) + newline);
        }

    }

    br.close();
    bw.write(sb.toString());
    bw.close();
}

当我进入调试模式下我能看到图像加载,我可以看到高度宽度的形象,但我似乎无法归还。在的getHeight()的getWidth()方法需要的图像观察者,我没有。谢谢你在前进。

When i go into debug mode I am able to see that the image was loaded and I can see the height and the width of the image, but i can't seem to return them. The getHeight() and getWidth() methods require an Image Observer, which i don't have. Thank you in advance.

推荐答案

您可以使用ImageIcon处理图像的加载适合你。

You can use ImageIcon to handle the loading of the image for you.

修改

Image img = Toolkit.getDefaultToolkit().getImage(url);
sb.append(line + ","+ img.getHeight(null) + "," + img.getWidth(Null) + newline);

ImageIcon img = new ImageIcon(url);
sb.append(line + ","+ img.getIconHeight(null) + "," + img.getIconWidth(Null) + newline);

主要的变化是使用的ImageIcon getIconWidth getIconHeight 方法。

这篇关于在获取Java图像的高度和宽度没有的ImageObserver的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

1403页,肝出来的..

09-06 14:52