ho questo semplice codice di passare attraverso un finestre di colore a 24 bit di file bmpjava Buffered immagine: Rilevazione pixel neri
BufferedImage mapa = BMPDecoder.read(new File("maps/map.bmp"));
final int xmin = mapa.getMinX();
final int ymin = mapa.getMinY();
final int ymax = ymin + mapa.getHeight();
final int xmax = xmin + mapa.getWidth();
for (int i = xmin;i<xmax;i++)
{
for (int j = ymin;j<ymax;j++)
{
int pixel = mapa.getRGB(i, j);
if (pixel == 0)
{
System.out.println("black at "+i+","+j);
}
}
}
Tuttavia, quando si verifica su un'immagine completamente nera, ottengo questo valore a pixel: -16777216
.
Speravo di ottenere un 0x0.
Come è possibile verificare i pixel neri (o qualsiasi altro colore per tale motivo)?
aggiornamento
Im test contro ((pixel & 0xff) == 0)
. È giusto? Grazie in anticipo.
Grazie mille. – Tom