nullpointer.at

Java Code Snippets: HowTo resize an ImageIcon


Hi there,

perhaps you ran into following problem too:
I had an image in the fileSystem, that i want to use in a JLabel, but it was way to big to match the offered space for the JLabel. One way to solve this is to resize the image itself. But on some reaseons if that is not possible, you have to do it within your code:

ImageIcon imageIcon = new ImageIcon("./img/imageName.png"); // load the image to a imageIcon
		Image image = imageIcon.getImage(); // transform it 
	    Image newimg = image.getScaledInstance(120, 120,  java.awt.Image.SCALE_SMOOTH); // scale it the smooth way  
	    imageIcon = new ImageIcon(newimg);  // transform it back

We used a smooth way to scale the image to get a nice looking new Image. Besides there are some other scaling algorithms offerd by java.awt.Image e.g. SCALE_FAST

Happy Coding

Ähnliche Artikel:


Beitrag veröffentlicht

in

von

Schlagwörter:

Kommentare

7 Antworten zu „Java Code Snippets: HowTo resize an ImageIcon“

  1. Avatar von Me
    Me

    Danke sehr für den nützlichen Tipp !
    Hat mir viel Zeit erspart :D

    1. Avatar von Pummer Thomas

      Freut mich geholfen zu haben!

  2. Avatar von csrlima
    csrlima

    Thanks!!!

    In spanish: Gracias!!!

  3. Avatar von Tim
    Tim

    Habe schon lange nach einer Lösung gesucht, bei dir hab ich es direkt verstanden. Keine Ahnung weshalb. Glaube die anderen Lösungen waren zu überladen.
    Ty

  4. Avatar von Friedrich Forck
    Friedrich Forck

    Man kann in ein JLabel auch HTML-Code eintragen.
    label.setText(“ „);
    Das Bild d:/picture.png wird nun mit 100 x 30 Pixeln gezeichnet, egal wie gr0ß das Original ist.

  5. Avatar von Friedrich Forck
    Friedrich Forck

    HTML-Code wird hier nicht angezeigt. Der JLabel-Text des vorigen Eintrags lautet ohne spitze Klammern:
    HTML src=’file:d:/picture.png‘ width=100 height=30 \HTML

  6. Avatar von Wilhelm Meyer
    Wilhelm Meyer

    Danke für den Code zum Ändern der Größe eines Icons.
    W. Meyer

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

*