Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| xmlgraphics-commons 2.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.xmlgraphics.image.codec.util
Class ImageDecoderImpl

    java.lang.Object
      org.apache.xmlgraphics.image.codec.util.ImageDecoderImpl

All Implemented Interfaces:
  ImageDecoder

Direct Known Subclasses:
  PNGImageDecoder, TIFFImageDecoder

    public abstract class ImageDecoderImpl

extends Object
implements ImageDecoder

A partial implementation of the `ImageDecoder` interface useful for subclassing.

Field Summary
`protected SeekableStream` | `input` The `SeekableStream` associcted with this `ImageEncoder`.
`protected ImageDecodeParam` | `param` The `ImageDecodeParam` object associated with this `ImageEncoder`.

Constructor Summary
`ImageDecoderImpl(InputStream input, ImageDecodeParam param)` Constructs an `ImageDecoderImpl` with a given `InputStream` and `ImageDecodeParam` instance.
`ImageDecoderImpl(SeekableStream input, ImageDecodeParam param)` Constructs an `ImageDecoderImpl` with a given `SeekableStream` and `ImageDecodeParam` instance.

Method Summary
`Raster` | `decodeAsRaster()` Returns a `Raster` that contains the decoded contents of the `SeekableStream` associated with this `ImageDecoder`.
`Raster` | `decodeAsRaster(int page)` Returns a `Raster` that contains the decoded contents of the `SeekableStream` associated with this `ImageDecoder`.
`RenderedImage` | `decodeAsRenderedImage()` Returns a `RenderedImage` that contains the decoded contents of the `SeekableStream` associated with this `ImageDecoder`.
`abstract RenderedImage` | `decodeAsRenderedImage(int page)` Returns a `RenderedImage` that contains the decoded contents of the `SeekableStream` associated with this `ImageDecoder`.
`SeekableStream` | `getInputStream()` Returns the `SeekableStream` associated with this `ImageDecoder`.
`int` | `getNumPages()` Returns the number of pages present in the current stream.
`ImageDecodeParam` | `getParam()` Returns the current parameters as an instance of the `ImageDecodeParam` interface.
`void` | `setParam(ImageDecodeParam param)` Sets the current parameters to an instance of the `ImageDecodeParam` interface.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

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

### 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`.

  Specified by:
    `getParam` in interface `ImageDecoder`

### 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`.

  Specified by:
    `setParam` in interface `ImageDecoder`

### getInputStream

    public SeekableStream getInputStream()

  Returns the `SeekableStream` associated with this `ImageDecoder`.

  Specified by:
    `getInputStream` in interface `ImageDecoder`

### getNumPages

    public int getNumPages()
                    throws IOException

  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.

  Specified by:
    `getNumPages` in interface `ImageDecoder`
  Throws:
    `IOException`

### decodeAsRaster

    public Raster decodeAsRaster()
                          throws IOException

  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.

  Specified by:
    `decodeAsRaster` in interface `ImageDecoder`
  Throws:
    `IOException`

### decodeAsRaster

    public Raster decodeAsRaster(int page)
                          throws IOException

  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.

  Specified by:
    `decodeAsRaster` in interface `ImageDecoder`
  Parameters:
    `page` - The page to be decoded.
  Throws:
    `IOException`

### decodeAsRenderedImage

    public RenderedImage decodeAsRenderedImage()
                                        throws IOException

  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.

  Specified by:
    `decodeAsRenderedImage` in interface `ImageDecoder`
  Throws:
    `IOException`

### decodeAsRenderedImage

    public abstract RenderedImage decodeAsRenderedImage(int page)
                                                 throws IOException

  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.

  Specified by:
    `decodeAsRenderedImage` in interface `ImageDecoder`
  Parameters:
    `page` - The page to be decoded.
  Throws:
    `IOException`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| xmlgraphics-commons 2.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright 1999-2016 The Apache Software Foundation. All Rights Reserved.