Java: utrzymanie proporcji obrazu tła JPanel

mamJPanel z pomalowanym obrazem tła i menedżerem układu z innymi mniejszymi obrazami, wszystko to wewnątrzJFrame. Obraz tła jest dość duży i chcę mieć możliwość utrzymania jego współczynnika proporcji, zarówno na dużym, jak i małym monitorze.

W końcu chcę móc mieć mojąLayoutManager a mniejsze obrazy w komórkach „przyklejone” do obrazu tła.

Szukałem zasobów i wydaje się, że wiele przykładów używa aBufferedImage ale nie jestem; czy to będzie stanowić problem? Opublikuję poniższy kod, aby malować obraz. Jeśli nie mam żadnych informacji, daj mi znać.

public class MonitorPanel extends JPanel {
    Image img;
    public MonitorPanel() throws MalformedURLException {
        //add components

        try {
            img = ImageIO.read(new File("src/customer_vlans.jpg"));
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }
protected void paintComponent(Graphics g)
{
    //paint background image
    super.paintComponent(g);
    //g.drawImage(img, 0, 0, getWidth(), getHeight(), this);
    g.drawImage(img, 0, 0, this);

}

}

EDYTOWAĆ: Powinienem wspomnieć, że znam formułę współczynnika proporcji:oryginalna wysokość / oryginalna szerokość x nowa szerokość = nowa wysokość Nie wiem jednak, jak prawidłowo to wykorzystać.

questionAnswers(4)

yourAnswerToTheQuestion