public class IIOImage extends Object
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.
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) | Modifier and Type | Field | Description |
|---|---|---|
protected RenderedImage |
image |
The
RenderedImage being referenced. |
protected IIOMetadata |
metadata |
An
IIOMetadata object containing metadata
associated with the image. |
protected Raster |
raster |
The
Raster being referenced. |
protected List<? extends BufferedImage> |
thumbnails |
A
List of BufferedImage thumbnails,
or null. |
| Constructor | Description |
|---|---|
IIOImage (Raster raster,
List<? extends BufferedImage> thumbnails,
IIOMetadata metadata) |
Constructs an
IIOImage containing a
Raster, and thumbnails and metadata
associated with it. |
IIOImage (RenderedImage image,
List<? extends BufferedImage> thumbnails,
IIOMetadata metadata) |
Constructs an
IIOImage containing a
RenderedImage, and thumbnails and metadata
associated with it. |
| Modifier and Type | Method | Description |
|---|---|---|
IIOMetadata |
getMetadata () |
Returns a reference to the current
IIOMetadata
object, or null is none is set. |
int |
getNumThumbnails () |
Returns the number of thumbnails stored in this
IIOImage. |
Raster |
getRaster () |
Returns the currently set
Raster, or
null if only a RenderedImage is
available. |
RenderedImage |
getRenderedImage () |
Returns the currently set
RenderedImage, or
null if only a Raster is available. |
BufferedImage |
getThumbnail (int index) |
Returns a thumbnail associated with the main image.
|
List<? extends BufferedImage> |
getThumbnails () |
Returns the current
List of thumbnail
BufferedImages, or null if none is
set. |
boolean |
hasRaster () |
Returns
true if this IIOImage stores
a Raster rather than a RenderedImage. |
void |
setMetadata (IIOMetadata metadata) |
Sets the
IIOMetadata to a new object, or
null. |
void |
setRaster (Raster raster) |
Sets the current
Raster. |
void |
setRenderedImage (RenderedImage image) |
Sets the current
RenderedImage. |
void |
setThumbnails (List<? extends BufferedImage> thumbnails) |
Sets the list of thumbnails to a new
List of
BufferedImages, or to null. |
protected RenderedImage image
RenderedImage being referenced.protected Raster raster
Raster being referenced.protected List<? extends BufferedImage> thumbnails
List of BufferedImage thumbnails,
or null. Non-BufferedImage objects
must not be stored in this List.protected IIOMetadata metadata
IIOMetadata object containing metadata
associated with the image.public IIOImage(RenderedImage image, List<? extends BufferedImage> thumbnails, IIOMetadata metadata)
IIOImage containing a
RenderedImage, and thumbnails and metadata
associated with it.
All parameters are stored by reference.
The thumbnails argument must either be
null or contain only BufferedImage
objects.
image - a RenderedImage.thumbnails - a List of BufferedImages,
or null.metadata - an IIOMetadata object, or
null.IllegalArgumentException - if image is
null.public IIOImage(Raster raster, List<? extends BufferedImage> thumbnails, IIOMetadata metadata)
IIOImage containing a
Raster, and thumbnails and metadata
associated with it.
All parameters are stored by reference.
raster - a Raster.thumbnails - a List of BufferedImages,
or null.metadata - an IIOMetadata object, or
null.IllegalArgumentException - if raster is
null.public RenderedImage getRenderedImage()
RenderedImage, or
null if only a Raster is available.RenderedImage, or null.setRenderedImage(java.awt.image.RenderedImage) public void setRenderedImage(RenderedImage image)
RenderedImage. The value is
stored by reference. Any existing Raster is
discarded.image - a RenderedImage.IllegalArgumentException - if image is
null.getRenderedImage() public boolean hasRaster()
true if this IIOImage stores
a Raster rather than a RenderedImage.true if a Raster is
available.public Raster getRaster()
Raster, or
null if only a RenderedImage is
available.Raster, or null.setRaster(java.awt.image.Raster) public void setRaster(Raster raster)
Raster. The value is
stored by reference. Any existing RenderedImage is
discarded.raster - a Raster.IllegalArgumentException - if raster is
null.getRaster() public int getNumThumbnails()
IIOImage.int.public BufferedImage getThumbnail(int index)
index - the index of the desired thumbnail image.BufferedImage.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.getThumbnails(),
setThumbnails(java.util.List<? extends java.awt.image.BufferedImage>) public List<? extends BufferedImage> getThumbnails()
List of thumbnail
BufferedImages, or null if none is
set. A live reference is returned.List of
BufferedImage thumbnails, or null.getThumbnail(int),
setThumbnails(java.util.List<? extends java.awt.image.BufferedImage>) public void setThumbnails(List<? extends BufferedImage> thumbnails)
List of
BufferedImages, or to null. The
reference to the previous List is discarded.
The thumbnails argument must either be
null or contain only BufferedImage
objects.
thumbnails - a List of
BufferedImage thumbnails, or null.getThumbnail(int),
getThumbnails() public IIOMetadata getMetadata()
IIOMetadata
object, or null is none is set.IIOMetadata object, or null.setMetadata(javax.imageio.metadata.IIOMetadata) public void setMetadata(IIOMetadata metadata)
IIOMetadata to a new object, or
null.metadata - an IIOMetadata object, or
null.getMetadata() Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.
Scripting on this page tracks web page traffic, but does not change the content in any way.