cs_djaouida27
Messages postés22Date d'inscriptionmardi 4 mars 2008StatutMembreDernière intervention12 juillet 2008
-
31 mai 2008 à 11:09
Ombitious_Developper
Messages postés2333Date d'inscriptionsamedi 28 février 2004StatutMembreDernière intervention26 juillet 2013
-
31 mai 2008 à 16:54
salut !
j'ai un pb de Bufferedouputstream, j'ai decoupe une image en 4 morceaux et je veux enregistrer chaque portion dans un fichier image, pour cela j'ai utilisé Bufferedoutputstream qui m'a cree un fichier image vide, mon pb est que je sais pas comment lier ce fichier avec mon image qui se troouve dans un buffer. j'ai essaye avec inputsream et ByteArrayOutputsream mais aucune resultat.
Ombitious_Developper
Messages postés2333Date d'inscriptionsamedi 28 février 2004StatutMembreDernière intervention26 juillet 201338 31 mai 2008 à 16:54
Salut:
Ici, j'ai supposé que tu es en train de manipuler un objet BufferedImage.
public class BufferedImageSplitter {
public static BufferedImage[] split(BufferedImage bi) {
BufferedImage[] bis = new BufferedImage[4];
for (int i = 0; i < 4; ++i) {
int w = bi.getWidth()/2;
int h = bi.getHeight()/2;
int x = w*(i%2);
int y = h*(i/2);
bis[i] = bi.getSubimage(x, y, w, h);
}
return bis;
}
public static void saveImage(BufferedImage bi,
String filename, String format) throws IOException{
ImageIO.write(bi, format, new File(filename));
}
public static void main(String[] args) {
try {
BufferedImage bi = ImageIO.read(new File("image.jpg"));
BufferedImage[] bis = split(bi);
for (int i = 0; i < bis.length; ++i) {
saveImage(bis[i], "img" + i + ".jpg", "jpg");
}
} catch (IOException e) {
e.printStackTrace();
}
}
}