0

我想将图像从 URL 调整为 50x50 像素。

这就是我加载图像的方式:

jLabel1.setIcon(new javax.swing.ImageIcon(new URL("http://url.com/picture.jpg"))); 

我怎样才能使图片.jpg 50x50px ?

有任何想法吗?

4

2 回答 2

3
  • ImageIcon有一个getImage()方法,返回一个Image.
  • Image有一个getScaledInstance()方法,返回一个 scaled Image
  • ImageIcon有一个作为参数的构造Image函数。

我会让你组装 3 片拼图。

于 2013-08-31T16:34:41.313 回答
2

你可以尝试这样的事情:

public BufferedImage resize(final URL url, final Dimension size) throws IOException{
    final BufferedImage image = ImageIO.read(url);
    final BufferedImage resized = new BufferedImage(size.width, size.height, BufferedImage.TYPE_INT_ARGB);
    final Graphics2D g = resized.createGraphics();
    g.drawImage(image, 0, 0, size.width, size.height, null);
    g.dispose();
    return resized;
}

用法:

final BufferedImage image = resize(new URL("http://url.com/picture.jpg"), new Dimension(50, 50));
于 2013-08-31T16:36:39.830 回答