Tải bản đầy đủ (.pdf) (48 trang)

Tài liệu Introduction to Java: 22 java.awt.image Reference docx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (133.79 KB, 48 trang )

22
java.awt.image Reference
22.1 AreaAveragingScaleFilter ★
Description
The AreaAveragingScaleFilter class scales an image using a simple smooth-
ing algorithm.
Class Definition
public class java.awt.image.AreaAveragingScaleFilter
extends java.awt.image.ReplicateScaleFilter {
// Constructor
public AreaAveragingScaleFilter (int width, int height);
// Instance Methods
public void setHints (int hints);
public void setPixels (int x, int y, int w, int h, ColorModel model,
byte[] pixels, int off, int scansize);
public void setPixels (int x, int y, int w, int h, ColorModel model,
int[] pixels, int off, int scansize);
}
897
10 July 2002 22:26
Constructor
AreaAveragingScaleFilter
public AreaAveragingScaleFilter (int width, int height)
Parameters width Width of scaled image.
height Height of scaled image.
Description Constructs an AverageScaleFilter that scales the original
image to the specified size.
Instance Methods
setHints
public void setHints (int hints)
Parameters hints Flags indicating how data will be delivered.


Overrides ImageFilter.setHints(int)
Description Gives this filter hints about how data will be delivered.
setPixels
public void setPixels (int x, int y, int w, int h,
ColorModel model, byte[] pixels, int off, int scansize)
Parameters x x-coordinate of top-left corner of pixel data
delivered with this method call.
y y-coordinate of top-left corner of pixel data
delivered with this method call.
w Width of the rectangle of pixel data delivered
with this method call.
h Height of the rectangle of pixel data delivered
with this method call.
model Color model of image data.
pixels Image data.
off Offset from beginning of the pixels array.
scansize Size of each line of data in pixels array.
Overrides ReplicateScaleFilter.setPixels(int, int, int,
int, ColorModel, byte[], int, int)
Description Receives a rectangle of image data from the ImageProducer;
scales these pixels and delivers them to any ImageConsumers.
public void setPixels (int x, int y, int w, int h,
ColorModel model, int[] pixels, int off, int scansize)
898
AREAAVERAGINGSCALEFILTER
10 July 2002 22:26
Parameters x x-coordinate of top-left corner of pixel data
delivered with this method call.
y y-coordinate of top-left corner of pixel data
delivered with this method call.

w Width of the rectangle of pixel data delivered
with this method call.
h Height of the rectangle of pixel data delivered
with this method call.
model Color model of image data.
pixels Image data.
off Offset from beginning of the pixels array.
scansize Size of each line of data in pixels array.
Overrides
ReplicateScaleFilter.setPixels(int, int, int,
int, ColorModel, int[], int, int)
Description Receives a rectangle of image data from the ImageProducer;
scales these pixels and delivers them to any ImageConsumers.
See Also
ColorModel, ReplicateScaleFilter
22.2 ColorModel
Description
The abstract ColorModel class defines the way a Java program represents colors.
It provides methods for extracting different color components from a pixel.
Class Definition
public class java.awt.image.ColorModel
extends java.lang.Object {
// Variables
protected int pixel_bits;
// Constructors
public ColorModel (int bits);
// Class Methods
public static ColorModel getRGBdefault();
// Instance Methods
public void finalize(); ★

public abstract int getAlpha (int pixel);
public abstract int getBlue (int pixel);
COLORMODEL 899
10 July 2002 22:26
public abstract int getGreen (int pixel);
public int getPixelSize();
public abstract int getRed (int pixel);
public int getRGB (int pixel);
}
ProtectedVariables
pixel_bits
protected int pixel_bits
The pixel_bits variable saves the ColorModel’s bits setting (the total num-
ber of bits per pixel).
Constructors
ColorModel
public ColorModel (int bits)
Parameters bits The number of bits required per pixel using this
model.
Description Constructs a ColorModel object.
Class Methods
getRGBdefault
public static ColorModel getRGBdefault()
Returns The default ColorModel format, which uses 8 bits for each of a
pixel’s color components: alpha (transparency), red, green,
and blue.
Instance Methods
finalize
public void finalize() ★
Overrides Object.finalize()

Description Cleans up when this object is garbage collected.
getAlpha
public abstract int getAlpha (int pixel)
Parameters pixel A pixel encoded with this ColorModel.
Returns The current alpha setting of the pixel.
900 COLORMODEL
10 July 2002 22:26
getBlue
public abstract int getBlue (int pixel)
Parameters pixel A pixel encoded with this ColorModel.
Returns The current blue setting of the pixel.
getGreen
public abstract int getGreen (int pixel)
Parameters pixel A pixel encoded with this ColorModel.
Returns The current green setting of the pixel.
getPixelSize
public int getPixelSize()
Returns The current pixel size for the color model.
getRed
public abstract int getRed (int pixel)
Parameters pixel A pixel encoded with this ColorModel.
Returns The current red setting of the pixel.
getRGB
public int getRGB (int pixel)
Parameters pixel A pixel encoded with this ColorModel.
Returns The current combined red, green, and blue settings of the
pixel.
Description Gets the color of pixel in the default RGB color model.
See Also
DirectColorModel, IndexColorModel, Object

22.3 CropImageFilter
Description
The CropImageFilter class creates a smaller image by cropping (i.e., extracting
a rectangular region from) a larger image.
CROPIMAGEFILTER 901
10 July 2002 22:26
Class Definition
public class java.awt.image.CropImageFilter
extends java.awt.image.ImageFilter {
// Constructors
public CropImageFilter (int x, int y, int width, int height);
// Instance Methods
public void setDimensions (int width, int height);
public void setPixels (int x, int y, int width, int height, ColorModel model,
byte[] pixels, int offset, int scansize);
public void setPixels (int x, int y, int width, int height, ColorModel model,
int[] pixels, int offset, int scansize);
public void setProperties (Hashtable properties);
}
Constructors
CropImageFilter
public CropImageFilter (int x, int y, int width, int
height)
Parameters x x-coordinate of top-left corner of piece to crop.
y y-coordinate of top-left corner of piece to crop.
width Width of image to crop.
height Height of image to crop.
Description Constructs a CropImageFilter that crops the specified region
from the original image.
Instance Methods

setDimensions
public void setDimensions (int width, int height)
Parameters width Ignored parameter.
height Ignored parameter.
Overrides ImageFilter.setDimensions(int, int)
Description Called with the original image’s dimensions; these dimensions
are ignored. The method in turn calls the ImageConsumer
with the dimensions of the cropped image.
setPixels
902 CROPIMAGEFILTER
10 July 2002 22:26
public void setPixels (int x, int y, int width, int
height, ColorModel model, byte[] pixels, int offset, int
scansize)
Parameters x x-coordinate of top-left corner of pixel data
delivered with this method call.
y y-coordinate of top-left corner of pixel data
delivered with this method call.
width Width of the rectangle of pixel data delivered
with this method call.
height Height of the rectangle of pixel data delivered
with this method call.
model Color model of image data.
pixels Image data.
offset Offset from beginning of the pixels array.
scansize Size of each line of data in pixels array.
Overrides
ImageFilter.setPixels(int, int, int, int,
ColorModel, byte[], int, int)
Description Receives a rectangle of image data from the ImageProducer;

crops these pixels and delivers them to any ImageConsumers.
public void setPixels (int x, int y, int width, int
height, ColorModel model, int[] pixels, int offset, int
scansize)
Parameters x x-coordinate of top-left corner of pixel data
delivered with this method call.
y y-coordinate of top-left corner of pixel data
delivered with this method call.
width Width of the rectangle of pixel data delivered
with this method call.
height Height of the rectangle of pixel data delivered
with this method call.
model Color model of image data.
pixels Image data.
offset Offset from beginning of the pixels array.
scansize Size of each line of data in pixels array.
Overrides ImageFilter.setPixels(int, int, int, int,
ColorModel, int[], int, int)
Description Receives a rectangle of image data from the ImageProducer;
crops these pixels and delivers them to any ImageConsumers.
CROPIMAGEFILTER 903
10 July 2002 22:26
setProperties
public void setProperties (Hashtable properties)
Parameters properties The properties for the image.
Overrides ImageFilter.setProperties(Hashtable)
Description Adds the “croprect” image property to the properties list.
See Also
ColorModel, Hashtable, ImageFilter
22.4 DirectColorModel

Description
The DirectColorModel class provides a ColorModel that specifies a translation
between pixels and alpha, red, green, and blue component values, where the color
values are embedded directly within the pixel.
Class Definition
public class java.awt.image.DirectColorModel
extends java.awt.image.ColorModel {
// Constructors
public DirectColorModel (int bits, int redMask, int greenMask,
int blueMask);
public DirectColorModel (int bits, int redMask, int greenMask,
int blueMask,
int alphaMask);
// Instance Methods
public final int getAlpha (int pixel);
public final int getAlphaMask();
public final int getBlue (int pixel);
public final int getBlueMask();
public final int getGreen (int pixel);
public final int getGreenMask()
public final int getRed (int pixel);
public final int getRedMask();
public final int getRGB (int pixel);
}
904 CROPIMAGEFILTER
10 July 2002 22:26
Constructors
DirectColorModel
public DirectColorModel (int bits, int redMask, int
greenMask, int blueMask)

Parameters bits The number of bits required per pixel of an
image using this model.
redMask The location of the red component of a pixel.
greenMask The location of the green component of a pixel.
blueMask The location of the blue component of a pixel.
Throws
IllegalArgumentException
If the mask bits are not contiguous or overlap.
Description Constructs a DirectColorModel object with the given size
and color masks; the alpha (transparency) component is not
used.
public DirectColorModel (int bits, int redMask, int
greenMask, int blueMask, int alphaMask)
Parameters bits The number of bits required per pixel of an
image using this model.
redMask The location of the red component of a pixel.
greenMask The location of the green component of a pixel.
blueMask The location of the blue component of a pixel.
alphaMask The location of the alpha component of a pixel.
Throws IllegalArgumentException
If the mask bits are not contiguous or overlap.
Description Constructs a DirectColorModel object with the given size
and color masks.
Instance Methods
getAlpha
public final int getAlpha (int pixel)
Parameters pixel A pixel encoded with this ColorModel.
Returns The current alpha setting of the pixel.
Overrides ColorModel.getAlpha(int)
getAlphaMask

DIRECTCOLORMODEL 905
10 July 2002 22:26
public final int getAlphaMask()
Returns The current alpha mask setting of the color model.
getBlue
public final int getBlue (int pixel)
Parameters pixel A pixel encoded with this ColorModel.
Returns The current blue setting of the pixel.
Overrides ColorModel.getBlue(int)
getBlueMask
public final int getBlueMask()
Returns The current blue mask setting of the color model.
getGreen
public final int getGreen (int pixel)
Parameters pixel A pixel encoded with this ColorModel.
Returns The current green setting of the pixel.
Overrides ColorModel.getGreen(int)
getGreenMask
public final int getGreenMask()
Returns The current green mask setting of the color model.
getRed
public final int getRed (int pixel)
Parameters pixel A pixel encoded with this ColorModel.
Returns The current red setting of the pixel.
Overrides ColorModel.getRed(int)
getRedMask
public final int getRedMask()
Returns The current red mask setting of the color model.
getRGB
906 DIRECTCOLORMODEL

10 July 2002 22:26
public final int getRGB (int pixel)
Parameters pixel A pixel encoded with this ColorModel.
Returns The current combined red, green, and blue settings of the
pixel.
Overrides
ColorModel.getRGB(int)
Description Gets the color of pixel in the default RGB color model.
See Also
ColorModel
22.5 FilteredImageSource
Description
The FilteredImageSource class acts as glue to put an original ImageProducer
and ImageFilter together to create a new image. As the ImageProducer for the
new image, FilteredImageSource is responsible for registering image con-
sumers for the new image.
Class Definition
public class java.awt.image.FilteredImageSource
extends java.lang.Object
implements java.awt.image.ImageProducer {
// Constructors
public FilteredImageSource (ImageProducer original,
ImageFilter filter);
// Instance Methods
public synchronized void addConsumer (ImageConsumer ic);
public synchronized boolean isConsumer (ImageConsumer ic);
public synchronized void removeConsumer (ImageConsumer ic);
public void requestTopDownLeftRightResend (ImageConsumer ic);
public void startProduction (ImageConsumer ic);
}

Constructors
FilteredImageSource
public FilteredImageSource (ImageProducer original,
ImageFilter filter)
FILTEREDIMAGESOURCE 907
10 July 2002 22:26
Parameters original An ImageProducer that generates the image to
be filtered.
filter The ImageFilter to use to process image data
delivered by original.
Description Constructs a FilteredImageSource object to filter an image
generated by an ImageProducer.
Class Methods
addConsumer
public synchronized void addConsumer (ImageConsumer ic)
Parameters ic ImageConsumer interested in receiving the new
image.
Implements ImageProducer.addConsumer(ImageConsumer)
Description Registers an ImageConsumer as interested in Image
information.
isConsumer
public synchronized boolean isConsumer (ImageConsumer ic)
Parameters ic ImageConsumer to check.
Returns true if ImageConsumer is registered with this ImagePro-
ducer
, false other wise.
Implements ImageProducer.isConsumer(ImageConsumer)
removeConsumer
public synchronized void removeConsumer (ImageConsumer ic)
Parameters ic ImageConsumer to remove.

Implements ImageProducer.removeConsumer(ImageConsumer)
Description Removes an ImageConsumer from the registered consumers
for this ImageProducer.
requestTopDownLeftRightResend
public void requestTopDownLeftRightResend (ImageConsumer
ic)
Parameters ic ImageConsumer to communicate with.
Implements ImageProducer.requestTopDownLeftRightResend()
Description Requests the retransmission of the Image data in top-down,
left-to-right order.
908 FILTEREDIMAGESOURCE
10 July 2002 22:26
startProduction
public void startProduction (ImageConsumer ic)
Parameters ic ImageConsumer to communicate with.
Implements ImageProducer.startProduction(ImageConsumer)
Description Registers ImageConsumer as interested in Image information
and tells ImageProducer to start creating the filtered Image
data immediately.
See Also
ImageFilter, ImageConsumer, ImageProducer, Object
22.6 ImageConsumer
Description
ImageConsumer is an interface that provides the means to consume pixel data
and render it for display.
Interface Definition
public abstract interface java.awt.image.ImageConsumer {
// Constants
public final static int COMPLETESCANLINES;
public final static int IMAGEABORTED;

public final static int IMAGEERROR;
public final static int RANDOMPIXELORDER;
public final static int SINGLEFRAME;
public final static int SINGLEFRAMEDONE;
public final static int SINGLEPASS;
public final static int STATICIMAGEDONE;
public final static int TOPDOWNLEFTRIGHT;
// Interface Methods
public abstract void imageComplete (int status);
public abstract void setColorModel (ColorModel model);
public abstract void setDimensions (int width, int height);
public abstract void setHints (int hints);
public abstract void setPixels (int x, int y, int width, int height,
ColorModel model, byte[] pixels, int offset, int scansize);
public abstract void setPixels (int x, int y, int width, int height,
ColorModel model, int[] pixels, int offset, int scansize);
public abstract void setProperties (Hashtable properties);
}
IMAGECONSUMER 909
10 July 2002 22:26
Constants
COMPLETESCANLINES
public final static int COMPLETESCANLINES
Hint flag for the setHints(int) method; indicates that the image will be
delivered one or more scanlines at a time.
IMAGEABORTED
public final static int IMAGEABORTED
Status flag for the imageComplete(int) method indicating that the loading
process for the image aborted.
IMAGEERROR

public final static int IMAGEERROR
Status flag for the imageComplete(int) method indicating that an error
happened during image loading.
RANDOMPIXELORDER
public final static int RANDOMPIXELORDER
Hint flag for the setHints(int) method; indicates that the pixels will be
delivered in no particular order.
SINGLEFRAME
public final static int SINGLEFRAME
Hint flag for the setHints(int) method; indicates that the image consists of
a single frame.
SINGLEFRAMEDONE
public final static int SINGLEFRAMEDONE
Status flag for the imageComplete(int) method indicating a single frame of
the image has loaded.
SINGLEPASS
public final static int SINGLEPASS
Hint flag for the setHints(int) method; indicates that each pixel will be
delivered once (i.e., the producer will not make multiple passes over the
image).
910 IMAGECONSUMER
10 July 2002 22:26
STATICIMAGEDONE
public final static int STATICIMAGEDONE
Status flag for the imageComplete(int) method indicating that the image
has fully and successfully loaded, and that there are no additional frames.
TOPDOWNLEFTRIGHT
public final static int TOPDOWNLEFTRIGHT
Hint flag for the setHints(int) method; indicates that pixels will be deliv-
ered in a top to bottom, left to right order.

Interface Methods
imageComplete
public abstract void imageComplete (int status)
Parameters status Image loading status flags.
Description Called when the image, or a frame of an image sequence, is
complete to report the completion status.
setColorModel
public abstract void setColorModel (ColorModel model)
Parameters model The color model for the image.
Description Tells the ImageConsumer the color model used for most of the
pixels in the image.
setDimensions
public abstract void setDimensions (int width, int height)
Parameters width Width for image.
height Height for image.
Description Tells the consumer the image’s dimensions.
setHints
public abstract void setHints (int hints)
Parameters hints Image consumption hints.
Description Gives the consumer information about how pixels will be deliv-
ered.
IMAGECONSUMER 911
10 July 2002 22:26
setPixels
public abstract void setPixels (int x, int y, int width,
int height, ColorModel model, byte[] pixels, int offset,
int scansize)
Parameters x x-coordinate of top-left corner of pixel data
delivered with this method call.
y y-coordinate of top-left corner of pixel data

delivered with this method call.
width Width of the rectangle of pixel data delivered
with this method call.
height Height of the rectangle of pixel data delivered
with this method call.
model Color model of image data.
pixels Image data.
offset Offset from beginning of the pixels array.
scansize Size of each line of data in pixels array.
Description Delivers a rectangular block of pixels to the image consumer.
public abstract void setPixels (int x, int y, int width,
int height, ColorModel model, int[] pixels, int offset,
int scansize)
Parameters x x-coordinate of top-left corner of pixel data
delivered with this method call.
y y-coordinate of top-left corner of pixel data
delivered with this method call.
width Width of the rectangle of pixel data delivered
with this method call.
height Height of the rectangle of pixel data delivered
with this method call.
model Color model of image data.
pixels Image data.
offset Offset from beginning of the pixels array.
scansize Size of each line of data in pixels array.
Description Delivers a rectangular block of pixels to the image consumer.
setProperties
public abstract void setProperties (Hashtable properties)
Parameters properties The properties for the image.
912 IMAGECONSUMER

10 July 2002 22:26
Description Delivers a Hashtable that contains the image’s properties.
See Also
ColorModel, Hashtable, ImageFilter, PixelGrabber, Object
22.7 ImageFilter
Description
The ImageFilter class sits between the ImageProducer and ImageConsumer as
an image is being created to provide a filtered version of that image. Image filters
are always used in conjunction with a FilteredImageSource. As an implementer
of the ImageConsumer inter face, an image filter receives pixel data from the orig-
inal image’s source and delivers it to another image consumer. The ImageFilter
class implements a null filter (i.e., the new image is the same as the original); to
produce a filter that modifies an image, create a subclass of ImageFilter.
Class Definition
public class java.awt.image.ImageFilter
extends java.lang.Object
implements java.awt.image.ImageConsumer, java.lang.Cloneable {
// Variables
protected ImageConsumer consumer;
// Constructors
public ImageFilter();
// Instance Methods
public Object clone();
public ImageFilter getFilterInstance (ImageConsumer ic);
public void imageComplete (int status);
public void resendTopDownLeftRight (ImageProducer ip);
public void setColorModel (ColorModel model);
public void setDimensions (int width, int height);
public void setHints (int hints);
public void setPixels (int x, int y, int width, int height,

ColorModel model, byte[] pixels, int offset, int scansize);
public void setPixels (int x, int y, int width, int height,
ColorModel model, int[] pixels, int offset, int scansize);
public void setProperties (Hashtable properties);
}
IMAGEFILTER 913
10 July 2002 22:26
Protected Variables
consumer
protected ImageConsumer consumer
The consumer variable is a reference to the actual ImageConsumer for the
Image.
Constructors
ImageFilter
public ImageFilter()
Description Constructs an empty ImageFilter instance.
Instance Methods
clone
public Object clone()
Overrides Object.clone()
Returns A copy of the ImageFilter instance.
getFilterInstance
public ImageFilter getFilterInstance (ImageConsumer ic)
Parameters ic The consumer in question.
Returns A copy of the ImageFilter instance.
Description Returns the filter that will do the filtering for ic.
imageComplete
void imageComplete (int status)
Parameters status Image loading completion status flags.
Implements ImageConsumer.imageComplete(int)

Description Called by the ImageProducer to indicate an image’s comple-
tion status. ImageFilter passes these flags to the consumer
unchanged.
resendTopDownLeftRight
public void resendTopDownLeftRight (ImageProducer ip)
Parameters ip The ImageProducer generating the original
image.
Description Called by the ImageConsumer to ask the filter to resend the
image data in the top-down, left-to-right order. In Image-
Filter
, this method calls the same method in the ImagePro-
ducer
, thus relaying the request.
914 IMAGEFILTER
10 July 2002 22:26
setColorModel
void setColorModel (ColorModel model)
Parameters model The color model for the image.
Implements ImageConsumer.setColorModel(ColorModel)
Description Sets the image’s color model.
setDimensions
void setDimensions (int width, int height)
Parameters width Width for image.
height Height for image.
Implements ImageConsumer.setDimensions(int, int)
Description Sets the image’s dimensions.
setHints
void setHints (int hints)
Parameters hints Image consumption hints.
Implements ImageConsumer.setHints(int)

Description Called by the ImageProducer to deliver hints about how the
image data will be delivered. ImageFilter passes these hints
on to the ImageConsumer.
setPixels
void setPixels (int x, int y, int width, int height,
ColorModel model, byte[] pixels, int offset, int scansize)
Parameters x x-coordinate of top-left corner of pixel data
delivered with this method call.
y y-coordinate of top-left corner of pixel data
delivered with this method call.
width Width of the rectangle of pixel data delivered
with this method call.
height Height of the rectangle of pixel data delivered
with this method call.
model Color model of image data.
pixels Image data.
offset Offset from beginning of the pixels array.
scansize Size of each line of data in pixels array.
Implements ImageConsumer.setPixels(int, int, int, int,
ColorModel, byte[], int, int)
IMAGEFILTER 915
10 July 2002 22:26
Description Delivers a rectangular block of pixels to the ImageFilter.
ImageFilter passes these pixels on to the consumer
unchanged.
void setPixels (int x, int y, int width, int height,
ColorModel model, int[] pixels, int offset, int scansize)
Parameters x x-coordinate of top-left corner of pixel data
delivered with this method call.
y y-coordinate of top-left corner of pixel data

delivered with this method call.
width Width of the rectangle of pixel data delivered
with this method call.
height Height of the rectangle of pixel data delivered
with this method call.
model Color model of image data.
pixels Image data.
offset Offset from beginning of the pixels array.
scansize Size of each line of data in pixels array.
Implements
ImageConsumer.setPixels(int, int, int, int,
ColorModel, int[], int, int)
Description Delivers a rectangular block of pixels to the ImageFilter.
ImageFilter passes these pixels on to the consumer
unchanged.
setProperties
void setProperties (Hashtable properties)
Parameters properties The properties for the image.
Implements ImageConsumer.setProperties(Hashtable)
Description Initializes the image’s properties. ImageFilter adds the prop-
erty “filter” to the Hashtable, and passes the result on to the
image consumer; the value of the property is the string
returned by the filter’s toString() method. If the property
“filter” is already in the Hashtable, ImageFilter adds the
string returned by its toString() method to the value already
associated with that property.
See Also
Cloneable, ColorModel, CropImageFilter, Hashtable, ImageConsumer,
ImageProducer, Object, ReplicateImageFilter, RGBImageFilter
916 IMAGEFILTER

10 July 2002 22:26
22.8 ImageObserver
Description
ImageObserver is an interface that provides constants and the callback mecha-
nism to receive asynchronous information about the status of an image as it loads.
Interface Definition
public abstract interface java.awt.image.ImageObserver {
// Constants
public static final int ABORT;
public static final int ALLBITS;
public static final int ERROR;
public static final int FRAMEBITS;
public static final int HEIGHT;
public static final int PROPERTIES;
public static final int SOMEBITS;
public static final int WIDTH;
// Interface Methods
public abstract boolean imageUpdate (Image image, int infoflags,
int x, int y, int width, int height);
}
Constants
ABORT
public static final int ABORT
The ABORT flag indicates that the image aborted during loading. An attempt
to reload the image may succeed, unless ERROR is also set.
ALLBITS
public static final int ALLBITS
The ALLBITS flag indicates that the image has completely loaded successfully.
The x, y, width, and height arguments to imageUpdate() should be
ignored.

ERROR
public static final int ERROR
The ERROR flag indicates that an error happened during the image loading
process. An attempt to reload the image will fail.
IMAGEOBSERVER 917
10 July 2002 22:26
FRAMEBITS
public static final int FRAMEBITS
The FRAMEBITS flag indicates that a complete frame of a multi-frame image
has loaded. The x, y, width, and height arguments to imageUpdate()
should be ignored.
HEIGHT
public static final int HEIGHT
The HEIGHT flag indicates that the height information is available for an
image; the image’s height is in the height argument to imageUpdate().
PROPERTIES
public static final int PROPERTIES
The PROPERTIES flag indicates that the properties information is available for
an image.
SOMEBITS
public static final int SOMEBITS
The SOMEBITS flag indicates that the image has started loading and some pix-
els are available. The bounding rectangle for the pixels that have been deliv-
ered so far is indicated by the x, y, width, and height arguments to
imageUpdate().
WIDTH
public static final int WIDTH
The WIDTH flag indicates that the width information is available for an image;
the image’s width is in the width argument to imageUpdate().
Interface Methods

imageUpdate
public abstract boolean imageUpdate (Image image, int
infoflags, int x, int y, int width, int height)
Parameters image Image that is being loaded.
infoflags The ImageObserver flags for the information
that is currently available.
x Meaning depends on infoflags that are set.
y Meaning depends on infoflags that are set.
918 IMAGEOBSERVER
10 July 2002 22:26
width Meaning depends on infoflags that are set.
height Meaning depends on infoflags that are set.
Returns true if image has completed loading (successfully or unsuc-
cessfully), false if additional information needs to be loaded.
Description Provides the callback mechanism for the asynchronous loading
of images.
See Also
Component, Image, Object
22.9 ImageProducer
Description
ImageProducer is an interface that provides the methods necessary for the pro-
duction of images and the communication with classes that implement the
ImageConsumer inter face.
Interface Definition
public abstract interface java.awt.image.ImageProducer {
// Interface Methods
public abstract void addConsumer (ImageConsumer ic);
public abstract boolean isConsumer (ImageConsumer ic);
public abstract void removeConsumer (ImageConsumer ic);
public abstract void requestTopDownLeftRightResend (ImageConsumer ic);

public abstract void startProduction (ImageConsumer ic);
}
Interface Methods
addConsumer
public abstract void addConsumer (ImageConsumer ic)
Parameters ic An ImageConsumer that wants to receive image
data.
Description Registers an ImageConsumer as interested in image
information.
isConsumer
IMAGEPRODUCER 919
10 July 2002 22:26
public abstract boolean isConsumer (ImageConsumer ic)
Parameters ic ImageConsumer to check.
Returns
true if ImageConsumer has registered with the ImagePro-
ducer
, false other wise.
removeConsumer
public abstract void removeConsumer (ImageConsumer ic)
Parameters ic ImageConsumer to remove.
Description Removes an
ImageConsumer from registered consumers for
this ImageProducer.
requestTopDownLeftRightResend
public abstract void requestTopDownLeftRightResend
(ImageConsumer ic)
Parameters ic ImageConsumer to communicate with.
Description Requests the retransmission of the image data in top-down, left-
to-right order.

startProduction
public abstract void startProduction (ImageConsumer ic)
Parameters ic ImageConsumer to communicate with.
Description Registers ImageConsumer as interested in image information
and tells ImageProducer to start sending the image data
immediately.
See Also
FilteredImageSource, Image, ImageConsumer, ImageFilter, MemoryIm-
ageSource
, Object
22.10 IndexColorModel
Description
The IndexColorModel class is a ColorModel that uses a color map lookup table
(with a maximum size of 256) to convert pixel values into their alpha, red, green,
and blue component parts.
920 IMAGEPRODUCER
10 July 2002 22:26
Class Definition
public class java.awt.image.IndexColorModel
extends java.awt.image.ColorModel {
// Constructors
public IndexColorModel (int bits, int size,
byte[] colorMap, int start, boolean hasalpha);
public IndexColorModel (int bits, int size,
byte[] colorMap, int start, boolean hasalpha, int transparent);
public IndexColorModel (int bits, int size,
byte[] red, byte[] green, byte[] blue);
public IndexColorModel (int bits, int size,
byte[] red, byte[] green, byte[] blue, byte[] alpha);
public IndexColorModel (int bits, int size,

byte[] red, byte[] green, byte[] blue, int transparent);
// Instance Methods
public final int getAlpha (int pixel);
public final void getAlphas (byte[] alphas);
public final int getBlue (int pixel);
public final void getBlues (byte[] blues);
public final int getGreen (int pixel);
public final void getGreens (byte[] greens);
public final int getMapSize();
public final int getRed (int pixel);
public final void getReds (byte[] reds);
public final int getRGB (int pixel);
public final int getTransparentPixel();
}
Constructors
IndexColorModel
public IndexColorModel (int bits, int size, byte[]
colorMap, int start, boolean hasalpha)
Parameters bits The number of bits in a pixel.
size The number of entries in the color map. Note:
this is not the size of the colorMap parameter.
colorMap Color component values in red, green, blue,
alpha order; the alpha component is optional,
and may not be present.
start The starting position in colorMap array.
hasalpha If hasalpha is true, alpha components are
present in colorMap array.
INDEXCOLORMODEL 921
10 July 2002 22:26

×