java.lang.Object
javax.imageio.IIOImage
public class IIOImage extends Object
A simple container class to aggregate an image, a set of
thumbnail (preview) images, and an object representing metadata
associated with the image.
The image data may take the form of either a
RenderedImage
, or a Raster
. Reader
methods that return an IIOImage
will always return a
BufferedImage
using the RenderedImage
reference. Writer methods that accept an IIOImage
will always accept a RenderedImage
, and may optionally
accept a Raster
.
Exactly one of getRenderedImage
and
getRaster
will return a non-null
value.
Subclasses are responsible for ensuring this behavior.
- See Also:
ImageReader.readAll(int, ImageReadParam)
,ImageReader.readAll(java.util.Iterator)
,ImageWriter.write(javax.imageio.metadata.IIOMetadata, IIOImage, ImageWriteParam)
,ImageWriter.write(IIOImage)
,ImageWriter.writeToSequence(IIOImage, ImageWriteParam)
,ImageWriter.writeInsert(int, IIOImage, ImageWriteParam)
-
Field Summary
Fields Modifier and Type Field Description protected RenderedImage
image
TheRenderedImage
being referenced.protected IIOMetadata
metadata
AnIIOMetadata
object containing metadata associated with the image.protected Raster
raster
TheRaster
being referenced.protected List<? extends BufferedImage>
thumbnails
AList
ofBufferedImage
thumbnails, ornull
. -
Constructor Summary
Constructors Constructor Description IIOImage(Raster raster, List<? extends BufferedImage> thumbnails, IIOMetadata metadata)
Constructs anIIOImage
containing aRaster
, and thumbnails and metadata associated with it.IIOImage(RenderedImage image, List<? extends BufferedImage> thumbnails, IIOMetadata metadata)
Constructs anIIOImage
containing aRenderedImage
, and thumbnails and metadata associated with it. -
Method Summary
Modifier and Type Method Description IIOMetadata
getMetadata()
Returns a reference to the currentIIOMetadata
object, ornull
is none is set.int
getNumThumbnails()
Returns the number of thumbnails stored in thisIIOImage
.Raster
getRaster()
Returns the currently setRaster
, ornull
if only aRenderedImage
is available.RenderedImage
getRenderedImage()
Returns the currently setRenderedImage
, ornull
if only aRaster
is available.BufferedImage
getThumbnail(int index)
Returns a thumbnail associated with the main image.List<? extends BufferedImage>
getThumbnails()
Returns the currentList
of thumbnailBufferedImage
s, ornull
if none is set.boolean
hasRaster()
Returnstrue
if thisIIOImage
stores aRaster
rather than aRenderedImage
.void
setMetadata(IIOMetadata metadata)
Sets theIIOMetadata
to a new object, ornull
.void
setRaster(Raster raster)
Sets the currentRaster
.void
setRenderedImage(RenderedImage image)
Sets the currentRenderedImage
.void
setThumbnails(List<? extends BufferedImage> thumbnails)
Sets the list of thumbnails to a newList
ofBufferedImage
s, or tonull
.
-
Field Details
-
image
TheRenderedImage
being referenced. -
raster
TheRaster
being referenced. -
thumbnails
AList
ofBufferedImage
thumbnails, ornull
. Non-BufferedImage
objects must not be stored in thisList
. -
metadata
AnIIOMetadata
object containing metadata associated with the image.
-
-
Constructor Details
-
IIOImage
public IIOImage(RenderedImage image, List<? extends BufferedImage> thumbnails, IIOMetadata metadata)Constructs anIIOImage
containing aRenderedImage
, and thumbnails and metadata associated with it.All parameters are stored by reference.
The
thumbnails
argument must either benull
or contain onlyBufferedImage
objects.- Parameters:
image
- aRenderedImage
.thumbnails
- aList
ofBufferedImage
s, ornull
.metadata
- anIIOMetadata
object, ornull
.- Throws:
IllegalArgumentException
- ifimage
isnull
.
-
IIOImage
Constructs anIIOImage
containing aRaster
, and thumbnails and metadata associated with it.All parameters are stored by reference.
- Parameters:
raster
- aRaster
.thumbnails
- aList
ofBufferedImage
s, ornull
.metadata
- anIIOMetadata
object, ornull
.- Throws:
IllegalArgumentException
- ifraster
isnull
.
-
-
Method Details
-
getRenderedImage
Returns the currently setRenderedImage
, ornull
if only aRaster
is available.- Returns:
- a
RenderedImage
, ornull
. - See Also:
setRenderedImage(java.awt.image.RenderedImage)
-
setRenderedImage
Sets the currentRenderedImage
. The value is stored by reference. Any existingRaster
is discarded.- Parameters:
image
- aRenderedImage
.- Throws:
IllegalArgumentException
- ifimage
isnull
.- See Also:
getRenderedImage()
-
hasRaster
public boolean hasRaster()Returnstrue
if thisIIOImage
stores aRaster
rather than aRenderedImage
.- Returns:
true
if aRaster
is available.
-
getRaster
Returns the currently setRaster
, ornull
if only aRenderedImage
is available.- Returns:
- a
Raster
, ornull
. - See Also:
setRaster(java.awt.image.Raster)
-
setRaster
Sets the currentRaster
. The value is stored by reference. Any existingRenderedImage
is discarded.- Parameters:
raster
- aRaster
.- Throws:
IllegalArgumentException
- ifraster
isnull
.- See Also:
getRaster()
-
getNumThumbnails
public int getNumThumbnails()Returns the number of thumbnails stored in thisIIOImage
.- Returns:
- the number of thumbnails, as an
int
.
-
getThumbnail
Returns a thumbnail associated with the main image.- Parameters:
index
- the index of the desired thumbnail image.- Returns:
- a thumbnail image, as a
BufferedImage
. - Throws:
IndexOutOfBoundsException
- if the supplied index is negative or larger than the largest valid index.ClassCastException
- if a non-BufferedImage
object is encountered in the list of thumbnails at the given index.- See Also:
getThumbnails()
,setThumbnails(java.util.List<? extends java.awt.image.BufferedImage>)
-
getThumbnails
Returns the currentList
of thumbnailBufferedImage
s, ornull
if none is set. A live reference is returned.- Returns:
- the current
List
ofBufferedImage
thumbnails, ornull
. - See Also:
getThumbnail(int)
,setThumbnails(java.util.List<? extends java.awt.image.BufferedImage>)
-
setThumbnails
Sets the list of thumbnails to a newList
ofBufferedImage
s, or tonull
. The reference to the previousList
is discarded.The
thumbnails
argument must either benull
or contain onlyBufferedImage
objects.- Parameters:
thumbnails
- aList
ofBufferedImage
thumbnails, ornull
.- See Also:
getThumbnail(int)
,getThumbnails()
-
getMetadata
Returns a reference to the currentIIOMetadata
object, ornull
is none is set.- Returns:
- an
IIOMetadata
object, ornull
. - See Also:
setMetadata(javax.imageio.metadata.IIOMetadata)
-
setMetadata
Sets theIIOMetadata
to a new object, ornull
.- Parameters:
metadata
- anIIOMetadata
object, ornull
.- See Also:
getMetadata()
-