Back to index

moin  1.9.0~rc2
Public Member Functions | Protected Attributes | Package Functions | Static Package Functions | Package Attributes | Static Package Attributes | Private Attributes
Acme.JPM.Encoders.GifEncoder Class Reference

Write out an image as a GIF. More...

Inheritance diagram for Acme.JPM.Encoders.GifEncoder:
Inheritance graph
[legend]
Collaboration diagram for Acme.JPM.Encoders.GifEncoder:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 GifEncoder (Image img, OutputStream out) throws IOException
 Constructor from Image.
 GifEncoder (Image img, OutputStream out, boolean interlace) throws IOException
 Constructor from Image with interlace setting.
 GifEncoder (ImageProducer prod, OutputStream out) throws IOException
 Constructor from ImageProducer.
 GifEncoder (ImageProducer prod, OutputStream out, boolean interlace) throws IOException
 Constructor from ImageProducer with interlace setting.
synchronized void encode () throws IOException
 Call this after initialization to get things going.
void setDimensions (int width, int height)
void setProperties (Hashtable props)
void setColorModel (ColorModel model)
void setHints (int hintflags)
void setPixels (int x, int y, int w, int h, ColorModel model, byte[] pixels, int off, int scansize)
void setPixels (int x, int y, int w, int h, ColorModel model, int[] pixels, int off, int scansize)
void imageComplete (int status)

Protected Attributes

OutputStream out

Package Functions

void encodeStart (int width, int height) throws IOException
 Subclasses implement this to initialize an encoding.
void encodePixels (int x, int y, int w, int h, int[] rgbPixels, int off, int scansize) throws IOException
 Subclasses implement this to actually write out some bits. They.
void encodeDone () throws IOException
 Subclasses implement this to finish an encoding.
byte GetPixel (int x, int y) throws IOException
void GIFEncode (OutputStream outs, int Width, int Height, boolean Interlace, byte Background, int Transparent, int BitsPerPixel, byte[] Red, byte[] Green, byte[] Blue) throws IOException
void BumpPixel ()
int GIFNextPixel () throws IOException
void Putword (int w, OutputStream outs) throws IOException
void Putbyte (byte b, OutputStream outs) throws IOException
final int MAXCODE (int n_bits)
void compress (int init_bits, OutputStream outs) throws IOException
void output (int code, OutputStream outs) throws IOException
void cl_block (OutputStream outs) throws IOException
void cl_hash (int hsize)
void char_init ()
void char_out (byte c, OutputStream outs) throws IOException
void flush_char (OutputStream outs) throws IOException

Static Package Functions

static void writeString (OutputStream out, String str) throws IOException

Package Attributes

int width
int height
int[][] rgbPixels
Acme.IntHashtable colorHash
int Width
int Height
boolean Interlace
int curx
int cury
int CountDown
int Pass = 0
int n_bits
int maxbits = BITS
int maxcode
int maxmaxcode = 1 << BITS
int[] htab = new int[HSIZE]
int[] codetab = new int[HSIZE]
int hsize = HSIZE
int free_ent = 0
boolean clear_flg = false
int g_init_bits
int ClearCode
int EOFCode
int cur_accum = 0
int cur_bits = 0
int masks []
int a_count
byte[] accum = new byte[256]

Static Package Attributes

static final int EOF = -1
static final int BITS = 12
static final int HSIZE = 5003

Private Attributes

boolean interlace = false

Detailed Description

Write out an image as a GIF.

Definition at line 46 of file GifEncoder.java.


Constructor & Destructor Documentation

Acme.JPM.Encoders.GifEncoder.GifEncoder ( Image  img,
OutputStream  out 
) throws IOException [inline]

Constructor from Image.

Definition at line 54 of file GifEncoder.java.

       {
       super( img, out );
       }
Acme.JPM.Encoders.GifEncoder.GifEncoder ( Image  img,
OutputStream  out,
boolean  interlace 
) throws IOException [inline]

Constructor from Image with interlace setting.

Definition at line 63 of file GifEncoder.java.

       {
       super( img, out );
       this.interlace = interlace;
       }
Acme.JPM.Encoders.GifEncoder.GifEncoder ( ImageProducer  prod,
OutputStream  out 
) throws IOException [inline]

Constructor from ImageProducer.

Definition at line 72 of file GifEncoder.java.

       {
       super( prod, out );
       }
Acme.JPM.Encoders.GifEncoder.GifEncoder ( ImageProducer  prod,
OutputStream  out,
boolean  interlace 
) throws IOException [inline]

Constructor from ImageProducer with interlace setting.

Definition at line 80 of file GifEncoder.java.

       {
       super( prod, out );
       this.interlace = interlace;
       }

Member Function Documentation

void Acme.JPM.Encoders.GifEncoder.BumpPixel ( ) [inline, package]

Definition at line 321 of file GifEncoder.java.

       {
       // Bump the current X position
       ++curx;

       // If we are at the end of a scan line, set curx back to the beginning
       // If we are interlaced, bump the cury to the appropriate spot,
       // otherwise, just increment it.
       if ( curx == Width )
           {
           curx = 0;

           if ( ! Interlace )
              ++cury;
           else
              {
              switch( Pass )
                  {
                  case 0:
                  cury += 8;
                  if ( cury >= Height )
                     {
                     ++Pass;
                     cury = 4;
                     }
                  break;

                  case 1:
                  cury += 8;
                  if ( cury >= Height )
                     {
                     ++Pass;
                     cury = 2;
                     }
                  break;

                  case 2:
                  cury += 4;
                  if ( cury >= Height )
                     {
                     ++Pass;
                     cury = 1;
                     }
                  break;

                  case 3:
                  cury += 2;
                  break;
                  }
              }
           }
       }

Here is the caller graph for this function:

void Acme.JPM.Encoders.GifEncoder.char_init ( ) [inline, package]

Definition at line 646 of file GifEncoder.java.

       {
       a_count = 0;
       }

Here is the caller graph for this function:

void Acme.JPM.Encoders.GifEncoder.char_out ( byte  c,
OutputStream  outs 
) throws IOException [inline, package]

Definition at line 656 of file GifEncoder.java.

       {
       accum[a_count++] = c;
       if ( a_count >= 254 )
           flush_char( outs );
       }

Here is the call graph for this function:

Here is the caller graph for this function:

void Acme.JPM.Encoders.GifEncoder.cl_block ( OutputStream  outs) throws IOException [inline, package]

Definition at line 624 of file GifEncoder.java.

       {
       cl_hash( hsize );
       free_ent = ClearCode + 2;
       clear_flg = true;

       output( ClearCode, outs );
       }

Here is the call graph for this function:

Here is the caller graph for this function:

void Acme.JPM.Encoders.GifEncoder.cl_hash ( int  hsize) [inline, package]

Definition at line 634 of file GifEncoder.java.

       {
       for ( int i = 0; i < hsize; ++i )
           htab[i] = -1;
       }

Here is the caller graph for this function:

void Acme.JPM.Encoders.GifEncoder.compress ( int  init_bits,
OutputStream  outs 
) throws IOException [inline, package]

Definition at line 467 of file GifEncoder.java.

       {
       int fcode;
       int i /* = 0 */;
       int c;
       int ent;
       int disp;
       int hsize_reg;
       int hshift;

       // Set up the globals:  g_init_bits - initial number of bits
       g_init_bits = init_bits;

       // Set up the necessary values
       clear_flg = false;
       n_bits = g_init_bits;
       maxcode = MAXCODE( n_bits );

       ClearCode = 1 << ( init_bits - 1 );
       EOFCode = ClearCode + 1;
       free_ent = ClearCode + 2;

       char_init();

       ent = GIFNextPixel();

       hshift = 0;
       for ( fcode = hsize; fcode < 65536; fcode *= 2 )
           ++hshift;
       hshift = 8 - hshift;               // set hash code range bound

       hsize_reg = hsize;
       cl_hash( hsize_reg );       // clear hash table

       output( ClearCode, outs );

       outer_loop:
       while ( (c = GIFNextPixel()) != EOF )
           {
           fcode = ( c << maxbits ) + ent;
           i = ( c << hshift ) ^ ent;            // xor hashing

           if ( htab[i] == fcode )
              {
              ent = codetab[i];
              continue;
              }
           else if ( htab[i] >= 0 )       // non-empty slot
              {
              disp = hsize_reg - i;       // secondary hash (after G. Knott)
              if ( i == 0 )
                  disp = 1;
              do
                  {
                  if ( (i -= disp) < 0 )
                     i += hsize_reg;

                  if ( htab[i] == fcode )
                     {
                     ent = codetab[i];
                     continue outer_loop;
                     }
                  }
              while ( htab[i] >= 0 );
              }
           output( ent, outs );
           ent = c;
           if ( free_ent < maxmaxcode )
              {
              codetab[i] = free_ent++;    // code -> hashtable
              htab[i] = fcode;
              }
           else
              cl_block( outs );
           }
       // Put out the final code.
       output( ent, outs );
       output( EOFCode, outs );
       }

Here is the call graph for this function:

Here is the caller graph for this function:

synchronized void Acme.JPM.Encoders.ImageEncoder.encode ( ) throws IOException [inline, inherited]

Call this after initialization to get things going.

Definition at line 108 of file ImageEncoder.java.

       {
       encoding = true;
       iox = null;
       producer.startProduction( this );
       while ( encoding )
           try
              {
              wait();
              }
           catch ( InterruptedException e ) {}
       if ( iox != null )
           throw iox;
       }
void Acme.JPM.Encoders.GifEncoder.encodeDone ( ) throws IOException [inline, package, virtual]

Subclasses implement this to finish an encoding.

Implements Acme.JPM.Encoders.ImageEncoder.

Definition at line 111 of file GifEncoder.java.

       {
       int transparentIndex = -1;
       int transparentRgb = -1;
        // Put all the pixels into a hash table.
        colorHash = new Acme.IntHashtable();
       int index = 0;
        for ( int row = 0; row < height; ++row )
            {
            int rowOffset = row * width;
            for ( int col = 0; col < width; ++col )
                {
                int rgb = rgbPixels[row][col];
              boolean isTransparent = ( ( rgb >>> 24 ) < 0x80 );
              if ( isTransparent )
                  {
                  if ( transparentIndex < 0 )
                     {
                     // First transparent color; remember it.
                     transparentIndex = index;
                     transparentRgb = rgb;
                     }
                  else if ( rgb != transparentRgb )
                     {
                     // A second transparent color; replace it with
                     // the first one.
                     rgbPixels[row][col] = rgb = transparentRgb;
                     }
                  }
                GifEncoderHashitem item =
                  (GifEncoderHashitem) colorHash.get( rgb );
                if ( item == null )
                  {
                  if ( index >= 256 )
                     throw new IOException( "too many colors for a GIF" );
                    item = new GifEncoderHashitem(
                     rgb, 1, index, isTransparent );
                  ++index;
                  colorHash.put( rgb, item );
                  }
                else
                    ++item.count;
                }
            }

       // Figure out how many bits to use.
       int logColors;
       if ( index <= 2 )
           logColors = 1;
       else if ( index <= 4 )
           logColors = 2;
       else if ( index <= 16 )
           logColors = 4;
       else
           logColors = 8;

       // Turn colors into colormap entries.
       int mapSize = 1 << logColors;
       byte[] reds = new byte[mapSize];
       byte[] grns = new byte[mapSize];
       byte[] blus = new byte[mapSize];
       for ( Enumeration e = colorHash.elements(); e.hasMoreElements(); )
           {
           GifEncoderHashitem item = (GifEncoderHashitem) e.nextElement();
           reds[item.index] = (byte) ( ( item.rgb >> 16 ) & 0xff );
           grns[item.index] = (byte) ( ( item.rgb >>  8 ) & 0xff );
           blus[item.index] = (byte) (   item.rgb         & 0xff );
           }

       GIFEncode(
           out, width, height, interlace, (byte) 0, transparentIndex,
           logColors, reds, grns, blus );
       }

Here is the call graph for this function:

void Acme.JPM.Encoders.GifEncoder.encodePixels ( int  x,
int  y,
int  w,
int  h,
int[]  rgbPixels,
int  off,
int  scansize 
) throws IOException [inline, package, virtual]

Subclasses implement this to actually write out some bits. They.

Implements Acme.JPM.Encoders.ImageEncoder.

Definition at line 97 of file GifEncoder.java.

       {
       // Save the pixels.
       for ( int row = 0; row < h; ++row )
           System.arraycopy(
              rgbPixels, row * scansize + off,
              this.rgbPixels[y + row], x, w );

       }
void Acme.JPM.Encoders.GifEncoder.encodeStart ( int  w,
int  h 
) throws IOException [inline, package, virtual]

Subclasses implement this to initialize an encoding.

Implements Acme.JPM.Encoders.ImageEncoder.

Definition at line 90 of file GifEncoder.java.

       {
       this.width = width;
       this.height = height;
       rgbPixels = new int[height][width];
       }
void Acme.JPM.Encoders.GifEncoder.flush_char ( OutputStream  outs) throws IOException [inline, package]

Definition at line 664 of file GifEncoder.java.

       {
       if ( a_count > 0 )
           {
           outs.write( a_count );
           outs.write( accum, 0, a_count );
           a_count = 0;
           }
       }

Here is the caller graph for this function:

byte Acme.JPM.Encoders.GifEncoder.GetPixel ( int  x,
int  y 
) throws IOException [inline, package]

Definition at line 185 of file GifEncoder.java.

       {
       GifEncoderHashitem item =
           (GifEncoderHashitem) colorHash.get( rgbPixels[y][x] );
       if ( item == null )
           throw new IOException( "color not found" );
       return (byte) item.index;
       }

Here is the call graph for this function:

Here is the caller graph for this function:

void Acme.JPM.Encoders.GifEncoder.GIFEncode ( OutputStream  outs,
int  Width,
int  Height,
boolean  Interlace,
byte  Background,
int  Transparent,
int  BitsPerPixel,
byte[]  Red,
byte[]  Green,
byte[]  Blue 
) throws IOException [inline, package]

Definition at line 210 of file GifEncoder.java.

       {
       byte B;
       int LeftOfs, TopOfs;
       int ColorMapSize;
       int InitCodeSize;
       int i;

       this.Width = Width;
       this.Height = Height;
       this.Interlace = Interlace;
       ColorMapSize = 1 << BitsPerPixel;
       LeftOfs = TopOfs = 0;

       // Calculate number of bits we are expecting
       CountDown = Width * Height;

       // Indicate which pass we are on (if interlace)
       Pass = 0;

       // The initial code size
       if ( BitsPerPixel <= 1 )
           InitCodeSize = 2;
       else
           InitCodeSize = BitsPerPixel;

       // Set up the current x and y position
       curx = 0;
       cury = 0;

       // Write the Magic header
       writeString( outs, "GIF89a" );

       // Write out the screen width and height
       Putword( Width, outs );
       Putword( Height, outs );

       // Indicate that there is a global colour map
       B = (byte) 0x80;            // Yes, there is a color map
       // OR in the resolution
       B |= (byte) ( ( 8 - 1 ) << 4 );
       // Not sorted
       // OR in the Bits per Pixel
       B |= (byte) ( ( BitsPerPixel - 1 ) );

       // Write it out
       Putbyte( B, outs );

       // Write out the Background colour
       Putbyte( Background, outs );

       // Pixel aspect ratio - 1:1.
       //Putbyte( (byte) 49, outs );
       // Java's GIF reader currently has a bug, if the aspect ratio byte is
       // not zero it throws an ImageFormatException.  It doesn't know that
       // 49 means a 1:1 aspect ratio.  Well, whatever, zero works with all
       // the other decoders I've tried so it probably doesn't hurt.
       Putbyte( (byte) 0, outs );

       // Write out the Global Colour Map
       for ( i = 0; i < ColorMapSize; ++i )
           {
           Putbyte( Red[i], outs );
           Putbyte( Green[i], outs );
           Putbyte( Blue[i], outs );
           }

       // Write out extension for transparent colour index, if necessary.
       if ( Transparent != -1 )
           {
           Putbyte( (byte) '!', outs );
           Putbyte( (byte) 0xf9, outs );
           Putbyte( (byte) 4, outs );
           Putbyte( (byte) 1, outs );
           Putbyte( (byte) 0, outs );
           Putbyte( (byte) 0, outs );
           Putbyte( (byte) Transparent, outs );
           Putbyte( (byte) 0, outs );
           }

       // Write an Image separator
       Putbyte( (byte) ',', outs );

       // Write the Image header
       Putword( LeftOfs, outs );
       Putword( TopOfs, outs );
       Putword( Width, outs );
       Putword( Height, outs );

       // Write out whether or not the image is interlaced
       if ( Interlace )
           Putbyte( (byte) 0x40, outs );
       else
           Putbyte( (byte) 0x00, outs );

       // Write out the initial code size
       Putbyte( (byte) InitCodeSize, outs );

       // Go and actually compress the data
       compress( InitCodeSize+1, outs );

       // Write out a Zero-length packet (to end the series)
       Putbyte( (byte) 0, outs );

       // Write the GIF file terminator
       Putbyte( (byte) ';', outs );
       }

Here is the call graph for this function:

Here is the caller graph for this function:

int Acme.JPM.Encoders.GifEncoder.GIFNextPixel ( ) throws IOException [inline, package]

Definition at line 377 of file GifEncoder.java.

       {
       byte r;

       if ( CountDown == 0 )
           return EOF;

       --CountDown;

       r = GetPixel( curx, cury );

       BumpPixel();

       return r & 0xff;
       }

Here is the call graph for this function:

Here is the caller graph for this function:

void Acme.JPM.Encoders.ImageEncoder.imageComplete ( int  status) [inline, inherited]

Definition at line 252 of file ImageEncoder.java.

       {
       producer.removeConsumer( this );
       if ( status == ImageConsumer.IMAGEABORTED )
           iox = new IOException( "image aborted" );
       else
           {
           try
              {
              encodeFinish();
              encodeDone();
              }
           catch ( IOException e )
              {
              iox = e;
              }
           }
       stop();
       }

Here is the call graph for this function:

final int Acme.JPM.Encoders.GifEncoder.MAXCODE ( int  n_bits) [inline, package]

Definition at line 434 of file GifEncoder.java.

       {
       return ( 1 << n_bits ) - 1;
       }

Here is the caller graph for this function:

void Acme.JPM.Encoders.GifEncoder.output ( int  code,
OutputStream  outs 
) throws IOException [inline, package]

Definition at line 570 of file GifEncoder.java.

       {
       cur_accum &= masks[cur_bits];

       if ( cur_bits > 0 )
           cur_accum |= ( code << cur_bits );
       else
           cur_accum = code;

       cur_bits += n_bits;

       while ( cur_bits >= 8 )
           {
           char_out( (byte) ( cur_accum & 0xff ), outs );
           cur_accum >>= 8;
           cur_bits -= 8;
           }

       // If the next entry is going to be too big for the code size,
       // then increase it, if possible.
       if ( free_ent > maxcode || clear_flg )
           {
           if ( clear_flg )
              {
              maxcode = MAXCODE(n_bits = g_init_bits);
              clear_flg = false;
              }
           else
              {
              ++n_bits;
              if ( n_bits == maxbits )
                  maxcode = maxmaxcode;
              else
                  maxcode = MAXCODE(n_bits);
              }
           }

       if ( code == EOFCode )
           {
           // At EOF, write the rest of the buffer.
           while ( cur_bits > 0 )
              {
              char_out( (byte) ( cur_accum & 0xff ), outs );
              cur_accum >>= 8;
              cur_bits -= 8;
              }

           flush_char( outs );
           }
       }

Here is the call graph for this function:

Here is the caller graph for this function:

void Acme.JPM.Encoders.GifEncoder.Putbyte ( byte  b,
OutputStream  outs 
) throws IOException [inline, package]

Definition at line 401 of file GifEncoder.java.

       {
       outs.write( b );
       }

Here is the caller graph for this function:

void Acme.JPM.Encoders.GifEncoder.Putword ( int  w,
OutputStream  outs 
) throws IOException [inline, package]

Definition at line 394 of file GifEncoder.java.

       {
       Putbyte( (byte) ( w & 0xff ), outs );
       Putbyte( (byte) ( ( w >> 8 ) & 0xff ), outs );
       }

Here is the call graph for this function:

Here is the caller graph for this function:

void Acme.JPM.Encoders.ImageEncoder.setColorModel ( ColorModel  model) [inline, inherited]

Definition at line 180 of file ImageEncoder.java.

       {
       // Ignore.
       }
void Acme.JPM.Encoders.ImageEncoder.setDimensions ( int  width,
int  height 
) [inline, inherited]

Definition at line 169 of file ImageEncoder.java.

       {
       this.width = width;
       this.height = height;
       }
void Acme.JPM.Encoders.ImageEncoder.setHints ( int  hintflags) [inline, inherited]

Definition at line 185 of file ImageEncoder.java.

       {
       this.hintflags = hintflags;
       }
void Acme.JPM.Encoders.ImageEncoder.setPixels ( int  x,
int  y,
int  w,
int  h,
ColorModel  model,
byte[]  pixels,
int  off,
int  scansize 
) [inline, inherited]

Definition at line 190 of file ImageEncoder.java.

       {
       int[] rgbPixels = new int[w];
       for ( int row = 0; row < h; ++row )
           {
           int rowOff = off + row * scansize;
           for ( int col = 0; col < w; ++col )
              rgbPixels[col] = model.getRGB( pixels[rowOff + col] & 0xff );
           try
              {
              encodePixelsWrapper( x, y + row, w, 1, rgbPixels, 0, w );
              }
           catch ( IOException e )
              {
              iox = e;
              stop();
              return;
              }
           }
       }

Here is the call graph for this function:

void Acme.JPM.Encoders.ImageEncoder.setPixels ( int  x,
int  y,
int  w,
int  h,
ColorModel  model,
int[]  pixels,
int  off,
int  scansize 
) [inline, inherited]

Definition at line 213 of file ImageEncoder.java.

       {
       if ( model == rgbModel )
           {
           try
              {
              encodePixelsWrapper( x, y, w, h, pixels, off, scansize );
              }
           catch ( IOException e )
              {
              iox = e;
              stop();
              return;
              }
           }
       else
           {
           int[] rgbPixels = new int[w];
            for ( int row = 0; row < h; ++row )
              {
              int rowOff = off + row * scansize;
                for ( int col = 0; col < w; ++col )
                    rgbPixels[col] = model.getRGB( pixels[rowOff + col] );
              try
                  {
                  encodePixelsWrapper( x, y + row, w, 1, rgbPixels, 0, w );
                  }
              catch ( IOException e )
                  {
                  iox = e;
                  stop();
                  return;
                  }
              }
           }
       }

Here is the call graph for this function:

void Acme.JPM.Encoders.ImageEncoder.setProperties ( Hashtable  props) [inline, inherited]

Definition at line 175 of file ImageEncoder.java.

       {
       this.props = props;
       }
static void Acme.JPM.Encoders.GifEncoder.writeString ( OutputStream  out,
String  str 
) throws IOException [inline, static, package]

Definition at line 194 of file GifEncoder.java.

        {
        byte[] buf = str.getBytes();
        out.write( buf );
        }

Here is the caller graph for this function:


Member Data Documentation

Definition at line 643 of file GifEncoder.java.

byte [] Acme.JPM.Encoders.GifEncoder.accum = new byte[256] [package]

Definition at line 652 of file GifEncoder.java.

final int Acme.JPM.Encoders.GifEncoder.BITS = 12 [static, package]

Definition at line 414 of file GifEncoder.java.

boolean Acme.JPM.Encoders.GifEncoder.clear_flg = false [package]

Definition at line 448 of file GifEncoder.java.

Definition at line 464 of file GifEncoder.java.

int [] Acme.JPM.Encoders.GifEncoder.codetab = new int[HSIZE] [package]

Definition at line 440 of file GifEncoder.java.

Definition at line 109 of file GifEncoder.java.

Definition at line 207 of file GifEncoder.java.

Definition at line 562 of file GifEncoder.java.

Definition at line 563 of file GifEncoder.java.

Definition at line 206 of file GifEncoder.java.

Definition at line 206 of file GifEncoder.java.

final int Acme.JPM.Encoders.GifEncoder.EOF = -1 [static, package]

Definition at line 374 of file GifEncoder.java.

Definition at line 465 of file GifEncoder.java.

Definition at line 444 of file GifEncoder.java.

Definition at line 462 of file GifEncoder.java.

Reimplemented from Acme.JPM.Encoders.ImageEncoder.

Definition at line 87 of file GifEncoder.java.

Definition at line 204 of file GifEncoder.java.

final int Acme.JPM.Encoders.GifEncoder.HSIZE = 5003 [static, package]

Definition at line 416 of file GifEncoder.java.

Definition at line 442 of file GifEncoder.java.

int [] Acme.JPM.Encoders.GifEncoder.htab = new int[HSIZE] [package]

Definition at line 439 of file GifEncoder.java.

boolean Acme.JPM.Encoders.GifEncoder.interlace = false [private]

Definition at line 49 of file GifEncoder.java.

Definition at line 205 of file GifEncoder.java.

Initial value:
 { 0x0000, 0x0001, 0x0003, 0x0007, 0x000F,
                  0x001F, 0x003F, 0x007F, 0x00FF,
                  0x01FF, 0x03FF, 0x07FF, 0x0FFF,
                  0x1FFF, 0x3FFF, 0x7FFF, 0xFFFF }

Definition at line 565 of file GifEncoder.java.

Definition at line 430 of file GifEncoder.java.

Definition at line 431 of file GifEncoder.java.

Definition at line 432 of file GifEncoder.java.

Definition at line 429 of file GifEncoder.java.

OutputStream Acme.JPM.Encoders.ImageEncoder.out [protected, inherited]

Definition at line 58 of file ImageEncoder.java.

Definition at line 208 of file GifEncoder.java.

Definition at line 88 of file GifEncoder.java.

Reimplemented from Acme.JPM.Encoders.ImageEncoder.

Definition at line 87 of file GifEncoder.java.

Definition at line 204 of file GifEncoder.java.


The documentation for this class was generated from the following file: