Bonjour j'essayes de decouper une serie d'images jpeg avec le programme ci dessous
Le problème que je rencontre est qu'après éxécution, mon programme, lève une exception : unsupported image type....
Puis dans mon dossier de destination une seule partie de ma liste d'images originale est découpée.
Je ne comprends pas pourquoi seulement certaines images sont traitées alors qu'elles sont toutes du même format ( jpeg).
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 import java.awt.image.BufferedImage; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.util.Arrays; import javax.imageio.ImageIO; public class ImageCut { public static void main(String[] args) throws IOException { MyComparator comparator = new MyComparator(); BufferedImage image; String source = "images/anciennesImages/"; File file = new File(source); // Je cree un tableau avec les element de mon dossier "file" File[] imageList = file.listFiles(); // Je trie les noms des images dans l'ordre alpha Arrays.sort(imageList, comparator); //Boucle pour passer chaque element de mon tableau et de le traiter for ( File f : imageList) { // je charge chaque image FileInputStream input = new FileInputStream(f.getPath()); image = ImageIO.read(input); // je recupere une vue de la zone d'image m'interressant image = image.getSubimage(0, 0, image.getWidth(), image.getHeight()/2); // je cree une nouvelle image au format jpeg dans le nouveau dossier ImageIO.write(image, "jpg", new File("/images/nouvellesImages/"+f.getName()));; } } }
Si quelqu'un peut m'aider a comprendre ce qui ne va pas.
Merci
Partager