javax.imageio

Class IIOImage

public class IIOImage extends Object

IIOImage is a container class for components of an image file that stores image data, image metadata and thumbnails. The image data can be either a RenderedImage or a Raster but not both. Image readers that produce IIOImages will always produce BufferedImages from the RenderedImage field. Image writers that accept IIOImages will always accept RenderedImages and may optionally accept Rasters.
Field Summary
protected RenderedImageimage
Image data as a RenderedImage. null if this IIOImage uses the Raster representation.
protected IIOMetadatametadata
Image metadata.
protected Rasterraster
Image data as a Raster. null if this IIOImage uses the RenderedImage representation.
protected List<? extends BufferedImage>thumbnails
A list of BufferedImage thumbnails of this image.
Constructor Summary
IIOImage(Raster raster, List<? extends BufferedImage> thumbnails, IIOMetadata metadata)
Construct an IIOImage containing raster image data, thumbnails and metadata.
IIOImage(RenderedImage image, List<? extends BufferedImage> thumbnails, IIOMetadata metadata)
Construct an IIOImage containing rendered image data, thumbnails and metadata.
Method Summary
IIOMetadatagetMetadata()
Retrieve the image metadata or null if there is no metadata associated with this IIOImage.
intgetNumThumbnails()
Retrieve the number of thumbnails in this IIOImage.
RastergetRaster()
Retrieve the raster image data stored in this IIOImage or null if this image stores data using the RenderedImage representation.
RenderedImagegetRenderedImage()
Retrieve the rendered image data stored in this IIOImage or null if this image stores data using the Raster representation.
BufferedImagegetThumbnail(int index)
Retrieve the thumbnail stored at the specified index in the thumbnails list.
List<? extends BufferedImage>getThumbnails()
Retrieve the list of thumbnails or null if there are no thumbnails associated with this IIOImage.
booleanhasRaster()
Check whether this IIOImage stores its image data as a Raster or as a RenderedImage.
voidsetMetadata(IIOMetadata metadata)
Set this IIOImage's metadata.
voidsetRaster(Raster raster)
Set the raster data for this image.
voidsetRenderedImage(RenderedImage image)
Set the rendered image data for this image.
voidsetThumbnails(List<? extends BufferedImage> thumbnails)
Set the list of thumbnails for this IIOImage to a new list of BufferedImages or to null.

Field Detail

image

protected RenderedImage image
Image data as a RenderedImage. null if this IIOImage uses the Raster representation.

metadata

protected IIOMetadata metadata
Image metadata.

raster

protected Raster raster
Image data as a Raster. null if this IIOImage uses the RenderedImage representation.

thumbnails

protected List<? extends BufferedImage> thumbnails
A list of BufferedImage thumbnails of this image.

Constructor Detail

IIOImage

public IIOImage(Raster raster, List<? extends BufferedImage> thumbnails, IIOMetadata metadata)
Construct an IIOImage containing raster image data, thumbnails and metadata.

Parameters: raster image data thumbnails a list of BufferedImage thumbnails or null metadata image metadata or null

Throws: IllegalArgumentException if raster is null

IIOImage

public IIOImage(RenderedImage image, List<? extends BufferedImage> thumbnails, IIOMetadata metadata)
Construct an IIOImage containing rendered image data, thumbnails and metadata.

Parameters: image rendered image data thumbnails a list of BufferedImage thumbnails or null metadata image metadata or null

Throws: IllegalArgumentException if image is null

Method Detail

getMetadata

public IIOMetadata getMetadata()
Retrieve the image metadata or null if there is no metadata associated with this IIOImage.

Returns: image metadata or null

getNumThumbnails

public int getNumThumbnails()
Retrieve the number of thumbnails in this IIOImage.

Returns: the number of thumbnails

getRaster

public Raster getRaster()
Retrieve the raster image data stored in this IIOImage or null if this image stores data using the RenderedImage representation.

Returns: the raster image data or null

getRenderedImage

public RenderedImage getRenderedImage()
Retrieve the rendered image data stored in this IIOImage or null if this image stores data using the Raster representation.

Returns: the rendered image data or null

getThumbnail

public BufferedImage getThumbnail(int index)
Retrieve the thumbnail stored at the specified index in the thumbnails list.

Parameters: index the index of the thumbnail to retrieve

Returns: the buffered image thumbnail

Throws: IndexOutOfBoundsException if index is out-of-bounds ClassCastException if the object returned from the thumbnails list is not a BufferedImage

getThumbnails

public List<? extends BufferedImage> getThumbnails()
Retrieve the list of thumbnails or null if there are no thumbnails associated with this IIOImage. The returned reference can be used to update the thumbnails list.

Returns: a list of thumbnails or null

hasRaster

public boolean hasRaster()
Check whether this IIOImage stores its image data as a Raster or as a RenderedImage.

Returns: true if this IIOImage uses the Raster representation, false if it uses the RenderedImage representation.

setMetadata

public void setMetadata(IIOMetadata metadata)
Set this IIOImage's metadata.

Parameters: metadata the image metadata

setRaster

public void setRaster(Raster raster)
Set the raster data for this image. This disposes of any existing rendered image data stored in this IIOImage.

Parameters: raster the image raster data

Throws: IllegalArgumentException if raster is null

setRenderedImage

public void setRenderedImage(RenderedImage image)
Set the rendered image data for this image. This disposes of any existing raster data stored in this IIOImage.

Parameters: image the rendered image data

Throws: IllegalArgumentException if image is null

setThumbnails

public void setThumbnails(List<? extends BufferedImage> thumbnails)
Set the list of thumbnails for this IIOImage to a new list of BufferedImages or to null. Any existing thumbnails list is disposed.

Parameters: thumbnails a new list of thumbnails or null