public abstract class Image extends Object
Image
is the superclass of all
classes that represent graphical images. The image must be
obtained in a platform-specific manner.Modifier and Type | Field and Description |
---|---|
protected float |
accelerationPriority
Priority for accelerating this image.
|
static int |
SCALE_AREA_AVERAGING
Use the Area Averaging image scaling algorithm.
|
static int |
SCALE_DEFAULT
Use the default image-scaling algorithm.
|
static int |
SCALE_FAST
Choose an image-scaling algorithm that gives higher priority
to scaling speed than smoothness of the scaled image.
|
static int |
SCALE_REPLICATE
Use the image scaling algorithm embodied in the
ReplicateScaleFilter class. |
static int |
SCALE_SMOOTH
Choose an image-scaling algorithm that gives higher priority
to image smoothness than scaling speed.
|
static Object |
UndefinedProperty
The
UndefinedProperty object should be returned whenever a
property which was not defined for a particular image is fetched. |
Constructor and Description |
---|
Image() |
Modifier and Type | Method and Description |
---|---|
void |
flush()
Flushes all reconstructable resources being used by this Image object.
|
float |
getAccelerationPriority()
Returns the current value of the acceleration priority hint.
|
ImageCapabilities |
getCapabilities(GraphicsConfiguration gc)
Returns an ImageCapabilities object which can be
inquired as to the capabilities of this
Image on the specified GraphicsConfiguration.
|
abstract Graphics |
getGraphics()
Creates a graphics context for drawing to an off-screen image.
|
abstract int |
getHeight(ImageObserver observer)
Determines the height of the image.
|
abstract Object |
getProperty(String name,
ImageObserver observer)
Gets a property of this image by name.
|
Image |
getScaledInstance(int width,
int height,
int hints)
Creates a scaled version of this image.
|
abstract ImageProducer |
getSource()
Gets the object that produces the pixels for the image.
|
abstract int |
getWidth(ImageObserver observer)
Determines the width of the image.
|
void |
setAccelerationPriority(float priority)
Sets a hint for this image about how important acceleration is.
|
protected float accelerationPriority
setAccelerationPriority(float)
method.public static final Object UndefinedProperty
UndefinedProperty
object should be returned whenever a
property which was not defined for a particular image is fetched.public static final int SCALE_DEFAULT
public static final int SCALE_FAST
public static final int SCALE_SMOOTH
public static final int SCALE_REPLICATE
ReplicateScaleFilter
class.
The Image
object is free to substitute a different filter
that performs the same algorithm yet integrates more efficiently
into the imaging infrastructure supplied by the toolkit.ReplicateScaleFilter
,
Constant Field Valuespublic static final int SCALE_AREA_AVERAGING
AreaAveragingScaleFilter
,
Constant Field Valuespublic abstract int getWidth(ImageObserver observer)
-1
and the specified
ImageObserver
object is notified later.observer
- an object waiting for the image to be loaded.-1
if the width is not yet known.getHeight(java.awt.image.ImageObserver)
,
ImageObserver
public abstract int getHeight(ImageObserver observer)
-1
and the specified
ImageObserver
object is notified later.observer
- an object waiting for the image to be loaded.-1
if the height is not yet known.getWidth(java.awt.image.ImageObserver)
,
ImageObserver
public abstract ImageProducer getSource()
ImageProducer
public abstract Graphics getGraphics()
UnsupportedOperationException
- if called for a
non-off-screen image.Graphics
,
Component.createImage(int, int)
public abstract Object getProperty(String name, ImageObserver observer)
Individual property names are defined by the various image
formats. If a property is not defined for a particular image, this
method returns the UndefinedProperty
object.
If the properties for this image are not yet known, this method
returns null
, and the ImageObserver
object is notified later.
The property name "comment"
should be used to store
an optional comment which can be presented to the application as a
description of the image, its source, or its author.
name
- a property name.observer
- an object waiting for this image to be loaded.NullPointerException
- if the property name is null.ImageObserver
,
UndefinedProperty
public Image getScaledInstance(int width, int height, int hints)
Image
object is returned which will render
the image at the specified width
and
height
by default. The new Image
object
may be loaded asynchronously even if the original source image
has already been loaded completely.
If either width
or height
is a negative number then a value is
substituted to maintain the aspect ratio of the original image
dimensions. If both width
and height
are negative, then the original image dimensions are used.
width
- the width to which to scale the image.height
- the height to which to scale the image.hints
- flags to indicate the type of algorithm to use
for image resampling.IllegalArgumentException
- if width
or height
is zero.SCALE_DEFAULT
,
SCALE_FAST
,
SCALE_SMOOTH
,
SCALE_REPLICATE
,
SCALE_AREA_AVERAGING
public void flush()
Examples of how this method affects specific types of Image object:
validate
method.
ImageProducer
are unloaded and all local resources are released.
These objects can later be reloaded from their original source
as needed when they are rendered, just as when they were first
created.
public ImageCapabilities getCapabilities(GraphicsConfiguration gc)
gc
- a GraphicsConfiguration
object. A value of null
for this parameter will result in getting the image capabilities
for the default GraphicsConfiguration
.ImageCapabilities
object that contains
the capabilities of this Image
on the specified
GraphicsConfiguration.VolatileImage.getCapabilities()
public void setAccelerationPriority(float priority)
priority
- a value between 0 and 1, inclusive, where higher
values indicate more importance for acceleration. A value of 0
means that this Image should never be accelerated. Other values
are used simply to determine acceleration priority relative to other
Images.IllegalArgumentException
- if priority
is less
than zero or greater than 1.public float getAccelerationPriority()
setAccelerationPriority
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, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.