Redimensionner une image
Résolu/Fermé
Sara426
Messages postés
678
Date d'inscription
mardi 6 octobre 2009
Statut
Membre
Dernière intervention
16 décembre 2015
-
28 nov. 2012 à 19:26
Sara426 Messages postés 678 Date d'inscription mardi 6 octobre 2009 Statut Membre Dernière intervention 16 décembre 2015 - 29 nov. 2012 à 21:59
Sara426 Messages postés 678 Date d'inscription mardi 6 octobre 2009 Statut Membre Dernière intervention 16 décembre 2015 - 29 nov. 2012 à 21:59
A voir également:
- Redimensionner une image
- Image iso - Guide
- Comment agrandir une image - Guide
- Acronis true image - Télécharger - Sauvegarde
- Légender une image - Guide
- Telecharger une image disque windows 10 fichier iso - Guide
3 réponses
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 019
28 nov. 2012 à 19:57
28 nov. 2012 à 19:57
Il faut complètement changer l'image, d'autant que là tu as une énorme perte de qualité vu que tu ne gardes qu'1 pixel sur 100 !
Donc tu vas devoir "découper" ton image en carré de 10x10 pixels et n'en extraire qu'un seul pixel.
La première idée ce serait d'en prendre un (n'importe lequel) parmi ce carré, mais ce n'est pas terrible car le pixel que tu vas choisir n'est pas forcément celui qui correspond mieux à l'ensemble du carré que tu substitues.
Donc il y a d'autres idées, comme faire la "moyenne" des pixels de ce carré, et là il y a plusieurs choix : faire la moyenne sur les composantes RGB mais on va tendre rapidement vers du gris, je pense que le mieux est de faire la moyenne sur du HSB.
Mais comme je l'ai déjà dit ta perte de qualité est énorme donc le résultat ne pourra pas être miraculeux qu'elle que soit la méthode utilisée.
Donc tu vas devoir "découper" ton image en carré de 10x10 pixels et n'en extraire qu'un seul pixel.
La première idée ce serait d'en prendre un (n'importe lequel) parmi ce carré, mais ce n'est pas terrible car le pixel que tu vas choisir n'est pas forcément celui qui correspond mieux à l'ensemble du carré que tu substitues.
Donc il y a d'autres idées, comme faire la "moyenne" des pixels de ce carré, et là il y a plusieurs choix : faire la moyenne sur les composantes RGB mais on va tendre rapidement vers du gris, je pense que le mieux est de faire la moyenne sur du HSB.
Mais comme je l'ai déjà dit ta perte de qualité est énorme donc le résultat ne pourra pas être miraculeux qu'elle que soit la méthode utilisée.
Sara426
Messages postés
678
Date d'inscription
mardi 6 octobre 2009
Statut
Membre
Dernière intervention
16 décembre 2015
63
28 nov. 2012 à 20:51
28 nov. 2012 à 20:51
Le problème est pas vraiment sur l'image.
Je peux en prendre une de 10x10, c'est pas un problème.
En fait, je voulais quelle s'adapte à la taille du carré dans lequel je la mets.
Je sais pas si c'est possible.
Je peux en prendre une de 10x10, c'est pas un problème.
En fait, je voulais quelle s'adapte à la taille du carré dans lequel je la mets.
Je sais pas si c'est possible.
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 019
28 nov. 2012 à 21:45
28 nov. 2012 à 21:45
Alors si je comprends bien ton problème, ce serait plutôt ça qu'il te faudrait :
g.drawImage(image,0,0,50,50,this);Exemple :
import java.awt.Graphics; import java.awt.Image; import java.awt.Toolkit; import javax.swing.JFrame; import javax.swing.JPanel; class ImagePanel extends JPanel { private static final long serialVersionUID = 1; private final Image img; private final int w, h; public ImagePanel(String fileName, int width, int height) { img = Toolkit.getDefaultToolkit().getImage(fileName); w = width; h = height; } public void paintComponent(Graphics g) { g.drawImage(img,0,0,w,h,this); } } public class Test { public static void main(String[] args) { JFrame frame = new JFrame(); frame.add(new ImagePanel("C:/test.gif",50,50)); frame.setSize(100,100); frame.setVisible(true); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } }
Sara426
Messages postés
678
Date d'inscription
mardi 6 octobre 2009
Statut
Membre
Dernière intervention
16 décembre 2015
63
29 nov. 2012 à 21:59
29 nov. 2012 à 21:59
Génial. C'est exactement ça.
Un gros gros merci ^^
Un gros gros merci ^^