comment vous faites pour récupérer les pixels d'un objet Image et les stocker dans un byte[]?
(et vice versa si possible)
 java.awt.Image -> byte[]
 java.awt.Image -> byte[]
				
				
						
						
				comment vous faites pour récupérer les pixels d'un objet Image et les stocker dans un byte[]?
(et vice versa si possible)
 
 
				
				
						
						
				Dans un int[] plutot si tu veux envoyer l'image/bitmap telle qu'elle. Tout simplement avec la version longue de BufferedImage.getRGB(x, y, ...). Ou en itérant sur la taille de l'image et en utilisant la version courte de la méthode.
Pour un byte[] ca serait avec la forme compressée de l'image : sauvegarder l'image dans un fichier temporaire ou un ByteArrayOutputstream au format png et mettre le contenu de ce fichier/flux dans un byte[]. Sur le client utiliser le procédé inverse pour décoder l'image.
Le 2nd cas peut-être intéressant car la forme compressée de l'image prend nettement moins de place.
Merci de penser au tagquand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.
suivez mon blog sur Développez.
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook
 
 
				
				
						
						
				ok, j'avais deja testé avec getRGB mais bizzarement, ca me donne un tableau de 0.
Je comprend pas trop comment m'y prendre avec le ByteArrayInputStream.
Si t'as un exemple concret ca m'aiderai beaucoup
 
 
				
				
						
						
				Aurais-tu mis scansize à 0 ? Pour une récupération complète de l'image : taille du tableau = h*w, offset = 0, scansize = w.ca me donne un tableau de 0.
Un truc comme ca (pas testé) :Si t'as un exemple concret ca m'aiderai beaucoup
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
Merci de penser au tagquand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.
suivez mon blog sur Développez.
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook
 
 
				
				
						
						
				write(RenderedImage im, String formatName, OutputStream output)
cela suppose que image est de type RenderedImage. Je n'ai qu'un simple objet java.awt.Image.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
ImageRendered est une interface, j'y comprend rien lol
un peu plus d'aide stp
 
 
				
				
						
						
				Si ton image est une instance de BufferedImage ou de RenderedImage) alors => cast !
(Note : BufferedImage hérite de RenderedImage).
Sinon créer une nouvelle BufferedImage et recopier l'image originale dedans avec graphics.drawIlmage().
C'est pas bien dur !!!!
Merci de penser au tagquand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.
suivez mon blog sur Développez.
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook
 
 
				
				
						
						
				Une fonction vite-faite, pas optimisée :
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Merci de penser au tagquand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.
suivez mon blog sur Développez.
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook
Partager