j'ai essayé le code suivant pour accomplir la tâche de lecture et d'écriture des images TIFF:Lecture et écriture sur l'image TIFF en Java
// Define the source and destination file names.
String inputFile = /images/FarmHouse.tif
String outputFile = /images/FarmHouse.bmp
// Load the input image.
RenderedOp src = JAI.create("fileload", inputFile);
// Encode the file as a BMP image.
FileOutputStream stream =
new FileOutputStream(outputFile);
JAI.create("encode", src, stream, BMP, null);
// Store the image in the BMP format.
JAI.create("filestore", src, outputFile, BMP, null);
Cependant, quand je lance le code, je reçois le message d'erreur suivant:
Caused by: java.lang.IllegalArgumentException: Only images with either 1 or 3 bands
can be written out as BMP files.
at com.sun.media.jai.codecimpl.BMPImageEncoder.encode(BMPImageEncoder.java:123)
at com.sun.media.jai.opimage.EncodeRIF.create(EncodeRIF.java:79)
Une idée comment je pourrais résoudre ce problème?
"ImageIO.write (image, "bmp", nouveau fichier (outputFile))" est rigide non écriture capable d'écrire avec succès l'image comme un fichier ".bmp". lorsque je change le code en ".tiff" à la place, alors ça va marcher. – user224270
désolé ... il y avait une petite faute de frappe. ImageIO.write devrait maintenant écrire l'image convertie, pas l'image originale. – Jeff
Merci Jeff. ça a marché! vous avez vraiment sauvé ma journée;) – user224270