java.awt.image.renderable

Interface RenderableImage

Known Implementing Classes:
RenderableImageOp

public interface RenderableImage

A RenderableImage is a common interface for rendering-independent images (a notion which subsumes resolution independence). That is, images which are described and have operations applied to them independent of any specific rendering of the image. For example, a RenderableImage can be rotated and cropped in resolution-independent terms. Then, it can be rendered for various specific contexts, such as a draft preview, a high-quality screen display, or a printer, each in an optimal fashion.

A RenderedImage is returned from a RenderableImage via the createRendering() method, which takes a RenderContext. The RenderContext specifies how the RenderedImage should be constructed. Note that it is not possible to extract pixels directly from a RenderableImage.

The createDefaultRendering() and createScaledRendering() methods are convenience methods that construct an appropriate RenderContext internally. All of the rendering methods may return a reference to a previously produced rendering.

Field Summary

static String
HINTS_OBSERVED
String constant that can be used to identify a property on a RenderedImage obtained via the createRendering or createScaledRendering methods.

Method Summary

RenderedImage
createDefaultRendering()
Returnd a RenderedImage instance of this image with a default width and height in pixels.
RenderedImage
createRendering(RenderContext renderContext)
Creates a RenderedImage that represented a rendering of this image using a given RenderContext.
RenderedImage
createScaledRendering(int w, int h, RenderingHints hints)
Creates a RenderedImage instance of this image with width w, and height h in pixels.
float
getHeight()
Gets the height in user coordinate space.
float
getMinX()
Gets the minimum X coordinate of the rendering-independent image data.
float
getMinY()
Gets the minimum Y coordinate of the rendering-independent image data.
Object
getProperty(String name)
Gets a property from the property set of this image.
String[]
getPropertyNames()
Returns a list of names recognized by getProperty.
Vector
getSources()
Returns a vector of RenderableImages that are the sources of image data for this RenderableImage.
float
getWidth()
Gets the width in user coordinate space.
boolean
isDynamic()
Returns true if successive renderings (that is, calls to createRendering() or createScaledRendering()) with the same arguments may produce different results.

Field Details

HINTS_OBSERVED

public static final String HINTS_OBSERVED
String constant that can be used to identify a property on a RenderedImage obtained via the createRendering or createScaledRendering methods. If such a property exists, the value of the propoery will be a RenderingHints object specifying which hints were observed in creating the rendering.
Field Value:
"HINTS_OBSERVED"

Method Details

createDefaultRendering

public RenderedImage createDefaultRendering()
Returnd a RenderedImage instance of this image with a default width and height in pixels. The RenderContext is built automatically with an appropriate usr2dev transform and an area of interest of the full image. The rendering hints are empty. createDefaultRendering may make use of a stored rendering for speed.
Returns:
a RenderedImage containing the rendered data.

createRendering

public RenderedImage createRendering(RenderContext renderContext)
Creates a RenderedImage that represented a rendering of this image using a given RenderContext. This is the most general way to obtain a rendering of a RenderableImage.

The created RenderedImage may have a property identified by the String HINTS_OBSERVED to indicate which RenderingHints (from the RenderContext) were used to create the image. In addition any RenderedImages that are obtained via the getSources() method on the created RenderedImage may have such a property.

Parameters:
renderContext - the RenderContext to use to produce the rendering.
Returns:
a RenderedImage containing the rendered data.

createScaledRendering

public RenderedImage createScaledRendering(int w,
                                           int h,
                                           RenderingHints hints)
Creates a RenderedImage instance of this image with width w, and height h in pixels. The RenderContext is built automatically with an appropriate usr2dev transform and an area of interest of the full image. All the rendering hints come from hints passed in.

If w == 0, it will be taken to equal Math.round(h*(getWidth()/getHeight())). Similarly, if h == 0, it will be taken to equal Math.round(w*(getHeight()/getWidth())). One of w or h must be non-zero or else an IllegalArgumentException will be thrown.

The created RenderedImage may have a property identified by the String HINTS_OBSERVED to indicate which RenderingHints were used to create the image. In addition any RenderedImages that are obtained via the getSources() method on the created RenderedImage may have such a property.

Parameters:
w - the width of rendered image in pixels, or 0.
h - the height of rendered image in pixels, or 0.
hints - a RenderingHints object containg hints.
Returns:
a RenderedImage containing the rendered data.

getHeight

public float getHeight()
Gets the height in user coordinate space. By convention, the usual height of a RenderedImage is equal to 1.0F.
Returns:
the height of the image in user coordinates.
Usages and Demos :

View More Examples of getHeight()
   1: import java.awt.image.IndexColorModel;
   2: import java.awt.image.renderable.RenderableImage;
   3: import javax.media.jai.OperationNode;
   4:         ...
   5:         }
   6:         if (image instanceof RenderableImage) {
   7:         ...
   8:             setImage((RenderableImage) image);
   9:             return;
  10:         ...
  11:                               new Float(image.getWidth()),
  12:                               new Float(image.getHeight())));

View Full Code Here
   1: import java.awt.image.renderable.ParameterBlock;
   2: import java.awt.image.renderable.RenderableImage;
   3: 
   4:         ...
   5:         }
   6:         if (image instanceof RenderableImage) {
   7:         ...
   8:             setImage((RenderableImage) image);
   9:             return;
  10:         ...
  11:                               new Float(image.getWidth()),
  12:                               new Float(image.getHeight())));

View Full Code Here
   1: import java.awt.image.RenderedImage;
   2: import java.awt.image.renderable.RenderableImage;
   3: import java.io.FileOutputStream;
   4:         ...
   5:                                        img.getWidth(),
   6:                                        img.getHeight(),
   7:                                        getGeneratorContext());
   8:         ...
   9: 
  10:     public void drawRenderableImage(RenderableImage img,
  11:                                     AffineTransform trans2){
  12:         ...
  13:                                      img.getWidth(),
  14:                                      img.getHeight(),

View Full Code Here

getMinX

public float getMinX()
Gets the minimum X coordinate of the rendering-independent image data.
Returns:
the minimum X coordinate of the rendering-independent image data.
Usages and Demos :

View More Examples of getMinX()
   1: import java.awt.image.RenderedImage;
   2: import java.awt.image.renderable.RenderableImage;
   3: import java.io.FileOutputStream;
   4:         ...
   5:                                        img, image,
   6:                                        img.getMinX(),
   7:                                        img.getMinY(),
   8:         ...
   9: 
  10:     public void drawRenderableImage(RenderableImage img,
  11:                                     AffineTransform trans2){
  12:         ...
  13:                                      img, image,
  14:                                      img.getMinX(),

View Full Code Here

getMinY

public float getMinY()
Gets the minimum Y coordinate of the rendering-independent image data.
Returns:
the minimum Y coordinate of the rendering-independent image data.
Usages and Demos :

View More Examples of getMinY()
   1: import java.awt.image.RenderedImage;
   2: import java.awt.image.renderable.RenderableImage;
   3: import java.io.FileOutputStream;
   4:         ...
   5:                                        img.getMinX(),
   6:                                        img.getMinY(),
   7:                                        img.getWidth(),
   8:         ...
   9: 
  10:     public void drawRenderableImage(RenderableImage img,
  11:                                     AffineTransform trans2){
  12:         ...
  13:                                      img.getMinX(),
  14:                                      img.getMinY(),

View Full Code Here

getProperty

public Object getProperty(String name)
Gets a property from the property set of this image. If the property name is not recognized, java.awt.Image.UndefinedProperty will be returned.
Parameters:
name - the name of the property to get, as a String.
Returns:
a reference to the property Object, or the value java.awt.Image.UndefinedProperty.
Usages and Demos :

View More Examples of getProperty(String name)
   1: import java.awt.image.renderable.RenderContext;
   2: import java.awt.image.renderable.RenderableImage;
   3: import java.util.HashMap;
   4:         ...
   5:         while (i.hasNext()) {
   6:             RenderableImage ri = (RenderableImage)i.next();
   7:         ...
   8:             ret = ri.getProperty(name);
   9:             if (ret != null) return ret;

View Full Code Here
   1: import java.awt.image.IndexColorModel;
   2: import java.awt.image.renderable.RenderableImage;
   3: import javax.media.jai.OperationNode;
   4:         ...
   5:         }
   6:         if (image instanceof RenderableImage) {
   7:         ...
   8:             setImage((RenderableImage) image);
   9:             return;
  10:         ...
  11:                 public Object getProperty(final String name) {
  12:                     return image.getProperty(name);

View Full Code Here
   1: import java.awt.image.renderable.ParameterBlock;
   2: import java.awt.image.renderable.RenderableImage;
   3: 
   4:         ...
   5:         }
   6:         if (image instanceof RenderableImage) {
   7:         ...
   8:             setImage((RenderableImage) image);
   9:             return;
  10:         ...
  11:                 public Object getProperty(final String name) {
  12:                     return image.getProperty(name);

View Full Code Here

getPropertyNames

public String[] getPropertyNames()
Returns a list of names recognized by getProperty.
Returns:
a list of property names.
Usages and Demos :

View More Examples of getPropertyNames()
   1: import java.awt.image.renderable.RenderContext;
   2: import java.awt.image.renderable.RenderableImage;
   3: import java.util.HashMap;
   4:         ...
   5:         while (i.hasNext()) {
   6:             RenderableImage ri = (RenderableImage)i.next();
   7:             ret = ri.getProperty(name);
   8:         ...
   9:             RenderableImage ri = (RenderableImage)iter.next();
  10:             String [] srcProps = ri.getPropertyNames();
  11:             if (srcProps.length != 0) {

View Full Code Here
   1: import java.awt.image.IndexColorModel;
   2: import java.awt.image.renderable.RenderableImage;
   3: import javax.media.jai.OperationNode;
   4:         ...
   5:         }
   6:         if (image instanceof RenderableImage) {
   7:         ...
   8:             setImage((RenderableImage) image);
   9:             return;
  10:         ...
  11:                 public String[] getPropertyNames() {
  12:                     return image.getPropertyNames();

View Full Code Here
   1: import java.awt.image.renderable.ParameterBlock;
   2: import java.awt.image.renderable.RenderableImage;
   3: 
   4:         ...
   5:         }
   6:         if (image instanceof RenderableImage) {
   7:         ...
   8:             setImage((RenderableImage) image);
   9:             return;
  10:         ...
  11:                 public String[] getPropertyNames() {
  12:                     return image.getPropertyNames();

View Full Code Here

getSources

public Vector getSources()
Returns a vector of RenderableImages that are the sources of image data for this RenderableImage. Note that this method may return an empty vector, to indicate that the image has no sources, or null, to indicate that no information is available.
Returns:
a (possibly empty) Vector of RenderableImages, or null.
Usages and Demos :

View More Examples of getSources()
   1: import java.awt.image.renderable.RenderContext;
   2: import java.awt.image.renderable.RenderableImage;
   3: import java.lang.ref.Reference;
   4:         ...
   5: 
   6:     public boolean allPaintRable(RenderableImage ri) {
   7:         if (!(ri instanceof PaintRable))
   8:         ...
   9: 
  10:         Vector v = ri.getSources();
  11:         if (v == null) return true;
  12:         ...
  13:         while (i.hasNext()) {
  14:             RenderableImage nri = (RenderableImage)i.next();

View Full Code Here

getWidth

public float getWidth()
Gets the width in user coordinate space. By convention, the usual width of a RenderableImage is equal to the image's aspect ratio (width divided by height).
Returns:
the width of the image in user coordinates.
Usages and Demos :

View More Examples of getWidth()
   1: import java.awt.image.IndexColorModel;
   2: import java.awt.image.renderable.RenderableImage;
   3: import javax.media.jai.OperationNode;
   4:         ...
   5:         }
   6:         if (image instanceof RenderableImage) {
   7:         ...
   8:             setImage((RenderableImage) image);
   9:             return;
  10:         ...
  11:             imageSize.setText(resources.getString(VocabularyKeys.SIZE_$2,
  12:                               new Float(image.getWidth()),

View Full Code Here
   1: import java.awt.image.renderable.ParameterBlock;
   2: import java.awt.image.renderable.RenderableImage;
   3: 
   4:         ...
   5:         }
   6:         if (image instanceof RenderableImage) {
   7:         ...
   8:             setImage((RenderableImage) image);
   9:             return;
  10:         ...
  11:             imageSize.setText(resources.getString(ResourceKeys.SIZE_$2,
  12:                               new Float(image.getWidth()),

View Full Code Here
   1: import java.awt.image.RenderedImage;
   2: import java.awt.image.renderable.RenderableImage;
   3: import java.io.FileOutputStream;
   4:         ...
   5:                                        img.getMinY(),
   6:                                        img.getWidth(),
   7:                                        img.getHeight(),
   8:         ...
   9: 
  10:     public void drawRenderableImage(RenderableImage img,
  11:                                     AffineTransform trans2){
  12:         ...
  13:                                      img.getMinY(),
  14:                                      img.getWidth(),

View Full Code Here

isDynamic

public boolean isDynamic()
Returns true if successive renderings (that is, calls to createRendering() or createScaledRendering()) with the same arguments may produce different results. This method may be used to determine whether an existing rendering may be cached and reused. It is always safe to return true.
Returns:
true if successive renderings with the same arguments might produce different results; false otherwise.