Grabbing Pixels from an Image

Grabbing Pixels from an Image

This tip shows you how to extract the pixels from an entire image or from a piece of an image. The following code shows the PixelGrabber class:

PG=new PixelGrabber(IMG,0,0,L,H,pixels,0,L);try{    PG.grabPixels();}catch(InterruptedException e)   {System.out.println(e.getMessage());}if((PG.getStatus() & ImageObserver.ABORT)!=0){      System.out.println("Can't grab all pixels!");      System.exit(0) ;}

As you can see, one of the overloaded PixelGrabber constructors accepts an Image, the x and y locations to begin grabbing pixels from the image (0,0 in the example), the width and height (L and H in the example), an integer array (pixels) and the offset and scan size (0 and L in this example). According to the documentation, this constructor will:

‘Create a PixelGrabber object to grab the (x, y, w, h) rectangular section of pixels from the specified image into the given array. The pixels are stored into the array in the default RGB ColorModel. The RGB data for pixel (i, j) where (i, j) is inside the rectangle (x, y, w, h) is stored in the array at pix[(j – y) * scansize + (i – x) +’



Share the Post: