BufferedImage img = ImageIO.read(…);
Image scaled = img.getScaledInstance(500, 500, Image.SCALE_SMOOTH);
ImageIcon icon = new ImageIcon(scaled);
当心,这将缩放图像,使其为正方形。看一看Java:维护JPanel背景图像的长宽比,讨论缩放后图像的长宽比。
此外,您还应该阅读Image.getScaledInstance()的风险,并查看将ImageIcon自动缩放为标签大小演示了这样做的问题一步一步的规模…



