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

## com.lowagie.text.pdf.codec
Class GifImage

    java.lang.Object
      com.lowagie.text.pdf.codec.GifImage

    public class GifImage

extends Object

Reads gif images of all types. All the images in a gif are read in the constructors and can be retrieved with other methods.

Author:
  Paulo Soares (psoares@consiste.pt)

Nested Class Summary
`(package private) static class` | `GifImage.GifFrame`

Field Summary
`protected int` | `bgColor`
`protected int` | `bgIndex`
`protected byte[]` | `block`
`protected int` | `blockSize`
`protected int` | `delay`
`protected int` | `dispose`
`protected ArrayList` | `frames`
`protected byte[]` | `fromData`
`protected URL` | `fromUrl`
`protected boolean` | `gctFlag`
`protected int` | `height`
`protected int` | `ih`
`protected DataInputStream` | `in`
`protected boolean` | `interlace`
`protected int` | `iw`
`protected int` | `ix`
`protected int` | `iy`
`protected boolean` | `lctFlag`
`protected int` | `lctSize`
`protected int` | `m_bpc`
`protected byte[]` | `m_curr_table`
`protected int` | `m_gbpc`
`protected byte[]` | `m_global_table`
`protected int` | `m_line_stride`
`protected byte[]` | `m_local_table`
`protected byte[]` | `m_out`
`protected static int` | `MaxStackSize`
`protected int` | `pixelAspect`
`protected byte[]` | `pixels`
`protected byte[]` | `pixelStack`
`protected short[]` | `prefix`
`protected byte[]` | `suffix`
`protected int` | `transIndex`
`protected boolean` | `transparency`
`protected int` | `width`

Constructor Summary
`GifImage(byte[] data)` Reads gif images from a byte array.
`GifImage(InputStream is)` Reads gif images from a stream.
`GifImage(String file)` Reads gif images from a file.
`GifImage(URL url)` Reads gif images from an URL.

Method Summary
`protected boolean` | `decodeImageData()`
`int` | `getFrameCount()` Gets the number of frames the gif has.
`int[]` | `getFramePosition(int frame)` Gets the [x,y] position of the frame in reference to the logical screen.
`Image` | `getImage(int frame)` Gets the image from a frame.
`int[]` | `getLogicalScreen()` Gets the logical screen.
`protected static int` | `newBpc(int bpc)`
`(package private) void` | `process(InputStream is)`
`protected int` | `readBlock()` Reads next variable length block from input.
`protected byte[]` | `readColorTable(int bpc)`
`protected void` | `readContents()`
`protected void` | `readGraphicControlExt()` Reads Graphics Control Extension values
`protected void` | `readHeader()` Reads GIF file header information.
`protected void` | `readImage()` Reads next frame image
`protected void` | `readLSD()` Reads Logical Screen Descriptor
`protected int` | `readShort()` Reads next 16-bit value, LSB first
`protected void` | `resetFrame()` Resets frame state for reading next image.
`protected void` | `setPixel(int x, int y, int v)`
`protected void` | `skip()` Skips variable length blocks up to and including next zero length block.

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

Field Detail

### in

    protected DataInputStream in

### width

    protected int width

### height

    protected int height

### gctFlag

    protected boolean gctFlag

### bgIndex

    protected int bgIndex

### bgColor

    protected int bgColor

### pixelAspect

    protected int pixelAspect

### lctFlag

    protected boolean lctFlag

### interlace

    protected boolean interlace

### lctSize

    protected int lctSize

### ix

    protected int ix

### iy

    protected int iy

### iw

    protected int iw

### ih

    protected int ih

### block

    protected byte[] block

### blockSize

    protected int blockSize

### dispose

    protected int dispose

### transparency

    protected boolean transparency

### delay

    protected int delay

### transIndex

    protected int transIndex

### MaxStackSize

    protected static final int MaxStackSize

See Also:
  Constant Field Values

### prefix

    protected short[] prefix

### suffix

    protected byte[] suffix

### pixelStack

    protected byte[] pixelStack

### pixels

    protected byte[] pixels

### m_out

    protected byte[] m_out

### m_bpc

    protected int m_bpc

### m_gbpc

    protected int m_gbpc

### m_global_table

    protected byte[] m_global_table

### m_local_table

    protected byte[] m_local_table

### m_curr_table

    protected byte[] m_curr_table

### m_line_stride

    protected int m_line_stride

### fromData

    protected byte[] fromData

### fromUrl

    protected URL fromUrl

### frames

    protected ArrayList frames

Constructor Detail

### GifImage

    public GifImage(URL url)
             throws IOException

  Reads gif images from an URL.

  Parameters:
    `url` - the URL
  Throws:
    `IOException` - on error

### GifImage

    public GifImage(String file)
             throws IOException

  Reads gif images from a file.

  Parameters:
    `file` - the file
  Throws:
    `IOException` - on error

### GifImage

    public GifImage(byte[] data)
             throws IOException

  Reads gif images from a byte array.

  Parameters:
    `data` - the byte array
  Throws:
    `IOException` - on error

### GifImage

    public GifImage(InputStream is)
             throws IOException

  Reads gif images from a stream. The stream is not closed.

  Parameters:
    `is` - the stream
  Throws:
    `IOException` - on error

Method Detail

### getFrameCount

    public int getFrameCount()

  Gets the number of frames the gif has.

  Returns:
    the number of frames the gif has

### getImage

    public Image getImage(int frame)

  Gets the image from a frame. The first frame is 1.

  Parameters:
    `frame` - the frame to get the image from
  Returns:
    the image

### getFramePosition

    public int[] getFramePosition(int frame)

  Gets the [x,y] position of the frame in reference to the logical screen.

  Parameters:
    `frame` - the frame
  Returns:
    the [x,y] position of the frame

### getLogicalScreen

    public int[] getLogicalScreen()

  Gets the logical screen. The images may be smaller and placed in some position in this screen to playback some animation. No image will be be bigger that this.

  Returns:
    the logical screen dimensions as [x,y]

### process

    void process(InputStream is)
           throws IOException

  Throws:
    `IOException`

### readHeader

    protected void readHeader()
                       throws IOException

  Reads GIF file header information.

  Throws:
    `IOException`

### readLSD

    protected void readLSD()
                    throws IOException

  Reads Logical Screen Descriptor

  Throws:
    `IOException`

### readShort

    protected int readShort()
                     throws IOException

  Reads next 16-bit value, LSB first

  Throws:
    `IOException`

### readBlock

    protected int readBlock()
                     throws IOException

  Reads next variable length block from input.

  Returns:
    number of bytes stored in "buffer"
  Throws:
    `IOException`

### readColorTable

    protected byte[] readColorTable(int bpc)
                             throws IOException

  Throws:
    `IOException`

### newBpc

    protected static int newBpc(int bpc)

### readContents

    protected void readContents()
                         throws IOException

  Throws:
    `IOException`

### readImage

    protected void readImage()
                      throws IOException

  Reads next frame image

  Throws:
    `IOException`

### decodeImageData

    protected boolean decodeImageData()
                               throws IOException

  Throws:
    `IOException`

### setPixel

    protected void setPixel(int x,
                            int y,
                            int v)

### resetFrame

    protected void resetFrame()

  Resets frame state for reading next image.

### readGraphicControlExt

    protected void readGraphicControlExt()
                                  throws IOException

  Reads Graphics Control Extension values

  Throws:
    `IOException`

### skip

    protected void skip()
                 throws IOException

  Skips variable length blocks up to and including next zero length block.

  Throws:
    `IOException`

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