Bonjour,
Dans mon appli j'ai un mode d'affichage de notes. Chaque note est affichée dans un JPanel qui a en fond une image de Post-it en noir et blanc. L'utilisateur peut choisir une couleur pour chaque Post-it. Je souhaiterait donc faire varier la couleur de l'image en fonction du choix de l'utilisateur. J'ai bien trouvé un peu partout comment transformer une image en noir et blanc, mais rien qui ne s'applique à ce que je souhaite obtenir.
Extrait de mon code:
Remarque: l'image du post-it comporte des zones de transparence qu'il ne faut pas coloriser. Voici un exemple:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 private String postIt = "large/post-it"; private Image img; public void initUi() { // divers éléments initialisés img = IconUtil.getIconImage(postIt); BufferedImage bimage=colorized(image, couleur); // le reste des intitialisations } private BufferedImage(BufferedImage src, Color c) { BufferedImage dest=new BufferedImage(src.getWidth(null), src.getHeight(null), BufferedImage.TYPE_INT_ARGB); // c'est là que ça coince return(dest); }
Image source:
Exemple dans une couleur déterminée (251,200,200):
(transformation effectuée avec la fonction "Couleurs > Coloriser" de Gimp)
Le but de la manœuvre est de n'avoir qu'une seule image source plutôt que autant de version qu'il y a de couleur sélectionnable par l'utilisateur.
Merci d'avance pour vos suggestions/solutions.
Partager