org.apache.batik.ext.awt.image.codec.util

Class ImageDecoderImpl

public abstract class ImageDecoderImpl extends Object implements ImageDecoder

A partial implementation of the ImageDecoder interface useful for subclassing.
Field Summary
protected SeekableStreaminput
The SeekableStream associcted with this ImageEncoder.
protected ImageDecodeParamparam
The ImageDecodeParam object associated with this ImageEncoder.
Constructor Summary
ImageDecoderImpl(SeekableStream input, ImageDecodeParam param)
Constructs an ImageDecoderImpl with a given SeekableStream and ImageDecodeParam instance.
ImageDecoderImpl(InputStream input, ImageDecodeParam param)
Constructs an ImageDecoderImpl with a given InputStream and ImageDecodeParam instance.
Method Summary
RasterdecodeAsRaster()
Returns a Raster that contains the decoded contents of the SeekableStream associated with this ImageDecoder.
RasterdecodeAsRaster(int page)
Returns a Raster that contains the decoded contents of the SeekableStream associated with this ImageDecoder.
RenderedImagedecodeAsRenderedImage()
Returns a RenderedImage that contains the decoded contents of the SeekableStream associated with this ImageDecoder.
abstract RenderedImagedecodeAsRenderedImage(int page)
Returns a RenderedImage that contains the decoded contents of the SeekableStream associated with this ImageDecoder.
SeekableStreamgetInputStream()
Returns the SeekableStream associated with this ImageDecoder.
intgetNumPages()
Returns the number of pages present in the current stream.
ImageDecodeParamgetParam()
Returns the current parameters as an instance of the ImageDecodeParam interface.
voidsetParam(ImageDecodeParam param)
Sets the current parameters to an instance of the ImageDecodeParam interface.

Field Detail

input

protected SeekableStream input
The SeekableStream associcted with this ImageEncoder.

param

protected ImageDecodeParam param
The ImageDecodeParam object associated with this ImageEncoder.

Constructor Detail

ImageDecoderImpl

public ImageDecoderImpl(SeekableStream input, ImageDecodeParam param)
Constructs an ImageDecoderImpl with a given SeekableStream and ImageDecodeParam instance.

ImageDecoderImpl

public ImageDecoderImpl(InputStream input, ImageDecodeParam param)
Constructs an ImageDecoderImpl with a given InputStream and ImageDecodeParam instance. The input parameter will be used to construct a ForwardSeekableStream; if the ability to seek backwards is required, the caller should construct an instance of SeekableStream and make use of the other contructor.

Method Detail

decodeAsRaster

public Raster decodeAsRaster()
Returns a Raster that contains the decoded contents of the SeekableStream associated with this ImageDecoder. Only the first page of a multi-page image is decoded.

decodeAsRaster

public Raster decodeAsRaster(int page)
Returns a Raster that contains the decoded contents of the SeekableStream associated with this ImageDecoder. The given page of a multi-page image is decoded. If the page does not exist, an IOException will be thrown. Page numbering begins at zero.

Parameters: page The page to be decoded.

decodeAsRenderedImage

public RenderedImage decodeAsRenderedImage()
Returns a RenderedImage that contains the decoded contents of the SeekableStream associated with this ImageDecoder. Only the first page of a multi-page image is decoded.

decodeAsRenderedImage

public abstract RenderedImage decodeAsRenderedImage(int page)
Returns a RenderedImage that contains the decoded contents of the SeekableStream associated with this ImageDecoder. The given page of a multi-page image is decoded. If the page does not exist, an IOException will be thrown. Page numbering begins at zero.

Parameters: page The page to be decoded.

getInputStream

public SeekableStream getInputStream()
Returns the SeekableStream associated with this ImageDecoder.

getNumPages

public int getNumPages()
Returns the number of pages present in the current stream. By default, the return value is 1. Subclasses that deal with multi-page formats should override this method.

getParam

public ImageDecodeParam getParam()
Returns the current parameters as an instance of the ImageDecodeParam interface. Concrete implementations of this interface will return corresponding concrete implementations of the ImageDecodeParam interface. For example, a JPEGImageDecoder will return an instance of JPEGDecodeParam.

setParam

public void setParam(ImageDecodeParam param)
Sets the current parameters to an instance of the ImageDecodeParam interface. Concrete implementations of ImageDecoder may throw a RuntimeException if the param argument is not an instance of the appropriate subclass or subinterface. For example, a JPEGImageDecoder will expect param to be an instance of JPEGDecodeParam.
Copyright B) 2007 Apache Software Foundation. All Rights Reserved.