1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
//Byte, donc image en niveaux de gris : BufferedImage.TYPE_BYTE_GRAY
byte[] buffer = ((DataBufferByte)MonBufferedImage.getRaster().getDataBuffer()).getData() ;
// Images 16 bits : BufferedImage.TYPE_USHORT_GRAY
short[] shortbuffer = ((DataBufferUShort)MonBufferedImage.getRaster().getDataBuffer()).getData() ;
// Idem en couleur, mais il faut faire attention au type de codage.
// Pour une image couleur, simplement en passant par le raster, on peut lire/écrire avec les méthodes *Sample
WritableRaster wr = MonBufferedImage.getRaster() ;
int channel = wrr.getNumBands() ; // Nombre de couleurs
wr.getSample(x, y, c) ; // Lecture
wr.setSample(x, y, c, value) ; // Ecriture |
Partager