Java中的ImageIcon和Image都是用于處理圖片的類。下面我們分別介紹一下這兩個類的用法。
// 創(chuàng)建一個ImageIcon對象 ImageIcon icon = new ImageIcon("image.png"); // 將icon對象設(shè)置為JLabel的圖標(biāo) JLabel label = new JLabel(icon);
上面的代碼中,我們首先創(chuàng)建一個ImageIcon對象,然后將它設(shè)置為JLabel組件的圖標(biāo)。這個過程非常簡單,因為ImageIcon自身就可以處理圖片的加載和縮放。
// 創(chuàng)建一個Image對象 Image image = ImageIO.read(new File("image.png")); // 根據(jù)image對象創(chuàng)建一個BufferedImage對象 BufferedImage bufferedImage = new BufferedImage(image.getWidth(null), image.getHeight(null), BufferedImage.TYPE_INT_RGB); // 獲取緩沖區(qū)的Graphics對象 Graphics graphics = bufferedImage.getGraphics(); // 繪制圖片 graphics.drawImage(image, 0, 0, null); // 保存圖片 ImageIO.write(bufferedImage, "jpg", new File("image.jpg"));
對于更加復(fù)雜的圖片處理,我們需要使用到Image類。上面的代碼中,我們首先從文件中讀取了一個圖片,然后根據(jù)這個Image對象創(chuàng)建了一個BufferedImage對象。接著,我們獲取了緩沖區(qū)的Graphics對象,并使用它繪制了圖片。最后,我們將繪制好的圖片保存為JPG格式。