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

## sim.util.media
Class PNGEncoder

    java.lang.Object
      sim.util.media.PNGEncoder

    public class PNGEncoder

extends java.lang.Object

PNGEncoder takes a Java Image object and creates a byte string which can be saved as a PNG file. The Image is presumed to use the DirectColorModel.

This code is taken, with permission, from J. David Eisenberg (david@catcode.com), and is distributed under the Artistic License.

Field Summary
`static int` | `FILTER_NONE` Constants for filters
`static int` | `FILTER_SUB`
`static int` | `FILTER_UP`

Constructor Summary
`PNGEncoder()` Class constructor
`PNGEncoder(java.awt.Image image)` Class constructor specifying Image to encode, with no alpha channel encoding.
`PNGEncoder(java.awt.Image image, boolean encodeAlpha)` Class constructor specifying Image to encode, and whether to encode alpha.
`PNGEncoder(java.awt.Image image, boolean encodeAlpha, int whichFilter)` Class constructor specifying Image to encode, whether to encode alpha, and filter to use.
`PNGEncoder(java.awt.Image image, boolean encodeAlpha, int whichFilter, int compLevel)` Class constructor specifying Image source to encode, whether to encode alpha, filter to use, and compression level.

Method Summary
`int` | `getCompressionLevel()` Retrieve compression level
`boolean` | `getEncodeAlpha()` Retrieve alpha encoding status.
`int` | `getFilter()` Retrieve filtering scheme
`byte[]` | `pngEncode()` Creates an array of bytes that is the PNG equivalent of the current image, specifying whether to encode alpha or not.
`void` | `setCompressionLevel(int level)` Set the compression level to use
`void` | `setEncodeAlpha(boolean encodeAlpha)` Set the alpha encoding on or off.
`void` | `setFilter(int whichFilter)` Set the filter to use
`void` | `setImage(java.awt.Image image)` Set the image to be encoded

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

Field Detail

### FILTER_NONE

    public static final int FILTER_NONE

  Constants for filters

  See Also:
    Constant Field Values

### FILTER_SUB

    public static final int FILTER_SUB

See Also:
  Constant Field Values

### FILTER_UP

    public static final int FILTER_UP

See Also:
  Constant Field Values

Constructor Detail

### PNGEncoder

    public PNGEncoder()

  Class constructor

### PNGEncoder

    public PNGEncoder(java.awt.Image image)

  Class constructor specifying Image to encode, with no alpha channel encoding.

  Parameters:
    `image` - A Java Image object which uses the DirectColorModel
  See Also:
    `Image`

### PNGEncoder

    public PNGEncoder(java.awt.Image image,
                      boolean encodeAlpha)

  Class constructor specifying Image to encode, and whether to encode alpha.

  Parameters:
    `image` - A Java Image object which uses the DirectColorModel
    `encodeAlpha` - Encode the alpha channel? false=no; true=yes
  See Also:
    `Image`

### PNGEncoder

    public PNGEncoder(java.awt.Image image,
                      boolean encodeAlpha,
                      int whichFilter)

  Class constructor specifying Image to encode, whether to encode alpha, and filter to use.

  Parameters:
    `image` - A Java Image object which uses the DirectColorModel
    `encodeAlpha` - Encode the alpha channel? false=no; true=yes
    `whichFilter` - 0=none, 1=sub, 2=up
  See Also:
    `Image`

### PNGEncoder

    public PNGEncoder(java.awt.Image image,
                      boolean encodeAlpha,
                      int whichFilter,
                      int compLevel)

  Class constructor specifying Image source to encode, whether to encode alpha, filter to use, and compression level.

  Parameters:
    `image` - A Java Image object
    `encodeAlpha` - Encode the alpha channel? false=no; true=yes
    `whichFilter` - 0=none, 1=sub, 2=up
    `compLevel` - 0..9
  See Also:
    `Image`

Method Detail

### setImage

    public void setImage(java.awt.Image image)

  Set the image to be encoded

  Parameters:
    `image` - A Java Image object which uses the DirectColorModel
  See Also:
    `Image`, `DirectColorModel`

### pngEncode

    public byte[] pngEncode()

  Creates an array of bytes that is the PNG equivalent of the current image, specifying whether to encode alpha or not.

  Parameters:
    `encodeAlpha` - boolean false=no alpha, true=encode alpha
  Returns:
    an array of bytes, or null if there was a problem

### setEncodeAlpha

    public void setEncodeAlpha(boolean encodeAlpha)

  Set the alpha encoding on or off.

  Parameters:
    `encodeAlpha` - false=no, true=yes

### getEncodeAlpha

    public boolean getEncodeAlpha()

  Retrieve alpha encoding status.

  Returns:
    boolean false=no, true=yes

### setFilter

    public void setFilter(int whichFilter)

  Set the filter to use

  Parameters:
    `whichFilter` - from constant list

### getFilter

    public int getFilter()

  Retrieve filtering scheme

  Returns:
    int (see constant list)

### setCompressionLevel

    public void setCompressionLevel(int level)

  Set the compression level to use

  Parameters:
    `level` - 0 through 9

### getCompressionLevel

    public int getCompressionLevel()

  Retrieve compression level

  Returns:
    int in range 0-9

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