Bonjour, voilà je vous poste mon code et l'erreur que j'obtiens
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
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
 
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.DataInputStream;
import java.io.IOException;
import java.net.URL;
import java.net.URLConnection;
 
public class LectureImage 
{
	public LectureImage(URL url)
	{
		this.url=url;
	}
 
	public Image Connection()
	{
		try
		{
			URLConnection urlC= url.openConnection();
			System.out.println(url);
			//Accès au toolkit
			java.awt.Toolkit toolkit = java.awt.Toolkit.getDefaultToolkit();
			//lecture de l'image
			Image image = toolkit.getImage(url);
			BufferedImage bufferedImage = new BufferedImage(image.getWidth(null),image.getHeight(null),BufferedImage.TYPE_INT_RGB );
--------------->> l'erreur se situe à la création de mon BufferedImage
 
			//Lecture de tous les pixels
			int w = bufferedImage.getWidth();
			int h = bufferedImage.getHeight();
			System.out.println(w+"	"+h);
			int[] rgbs = new int[w*h];
			//On crée l'espace neccessaire
			bufferedImage.getRGB(0,0,w,h,rgbs,0,w);
 
			return image;
		}
		catch (IOException e)
		{
			e.printStackTrace();
			return null;
		}
	}
Voilà l'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
Exception in thread "main" java.lang.IllegalArgumentException: Width (-1) and height (-1) cannot be <= 0
	at java.awt.image.DirectColorModel.createCompatibleWritableRaster(Unknown Source)
	at java.awt.image.BufferedImage.<init>(Unknown Source)
	at LectureImage.Connection(LectureImage.java:45)
	at TP1Main.main(TP1Main.java:31)
Donc mon problème c'est que l'image je ne veux pas la sauvegarder en un quelconque format je voudrais travailler directement dessus.
Le vrai problème c'est que je ne sais pas comment récupérer le width et le height de mon image avant de créer le BufferedImage car il faut apparemment passer un ImageObserver en paramètre mais bon je sais pas trop comment ça marche.

Une solution je pense serait de sauvegarder mon image puis de travailler sur la copie pour récupérer le width et le height mais bon se serait lourd je trouve.

Si quelqu'un a une idée, merci beaucoup !!