## org.apache.batik.ext.awt.image.codec
Class PNGEncodeParam.Palette

    java.lang.Object
      org.apache.batik.ext.awt.image.codec.PNGEncodeParam
          org.apache.batik.ext.awt.image.codec.PNGEncodeParam.Palette

All Implemented Interfaces:
  java.lang.Cloneable, ImageDecodeParam, ImageEncodeParam, java.io.Serializable

Enclosing class:
  PNGEncodeParam

public static class PNGEncodeParam.Palette
extends PNGEncodeParam

See Also:
  Serialized Form

Nested Class Summary

Nested classes inherited from class org.apache.batik.ext.awt.image.codec.PNGEncodeParam
`PNGEncodeParam.Gray, PNGEncodeParam.Palette, PNGEncodeParam.RGB`

Field Summary

Fields inherited from class org.apache.batik.ext.awt.image.codec.PNGEncodeParam
`bitDepth, bitDepthSet, INTENT_ABSOLUTE, INTENT_PERCEPTUAL, INTENT_RELATIVE, INTENT_SATURATION, PNG_FILTER_AVERAGE, PNG_FILTER_NONE, PNG_FILTER_PAETH, PNG_FILTER_SUB, PNG_FILTER_UP`

Constructor Summary
`PNGEncodeParam.Palette()` Constructs an instance of `PNGEncodeParam.Palette`.

Method Summary
`int` `getBackgroundPaletteIndex()` Returns the palette index of the suggested background color.
`int[]` `getPalette()` Returns the current RGB palette.
`byte[]` `getPaletteTransparency()` Returns the alpha values associated with each palette entry.
`boolean` `isBackgroundSet()` Returns true if a 'bKGD' chunk will be output.
`boolean` `isPaletteSet()` Returns true if a 'PLTE' chunk will be output.
`void` `setBackgroundPaletteIndex(int index)` Sets the palette index of the suggested background color.
`void` `setBitDepth(int bitDepth)` Sets the desired bit depth for a palette image.
`void` `setPalette(int[] rgb)` Sets the RGB palette of the image to be encoded.
`void` `setPaletteTransparency(byte[] alpha)` Sets the alpha values associated with each palette entry.
`void` `unsetBackground()` Suppresses the 'bKGD' chunk from being output.
`void` `unsetPalette()` Suppresses the 'PLTE' chunk from being output.

Methods inherited from class org.apache.batik.ext.awt.image.codec.PNGEncodeParam

`addPrivateChunk, filterRow, getBitDepth, getChromaticity, getCompressedText, getDefaultEncodeParam, getGamma, getICCProfileData, getInterlacing, getModificationTime, getNumPrivateChunks, getPaletteHistogram, getPhysicalDimension, getPrivateChunkData, getPrivateChunkType, getSignificantBits, getSRGBIntent, getSuggestedPalette, getText, isChromaticitySet, isCompressedTextSet, isGammaSet, isICCProfileDataSet, isModificationTimeSet, isPaletteHistogramSet, isPhysicalDimensionSet, isSignificantBitsSet, isSRGBIntentSet, isSuggestedPaletteSet, isTextSet, isTransparencySet, paethPredictor, removeAllPrivateChunks, removeUnsafeToCopyPrivateChunks, setChromaticity, setChromaticity, setCompressedText, setGamma, setICCProfileData, setInterlacing, setModificationTime, setPaletteHistogram, setPhysicalDimension, setPhysicalDimension, setSignificantBits, setSRGBIntent, setSuggestedPalette, setText, unsetBitDepth, unsetChromaticity, unsetCompressedText, unsetGamma, unsetICCProfileData, unsetModificationTime, unsetPaletteHistogram, unsetPhysicalDimension, unsetSignificantBits, unsetSRGBIntent, unsetSuggestedPalette, unsetText, unsetTransparency`

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

Constructor Detail

### PNGEncodeParam.Palette

    public PNGEncodeParam.Palette()

  Constructs an instance of `PNGEncodeParam.Palette`.

Method Detail

### unsetBackground

    public void unsetBackground()

  Suppresses the 'bKGD' chunk from being output.

  Overrides:
    `unsetBackground` in class `PNGEncodeParam`

### isBackgroundSet

    public boolean isBackgroundSet()

  Returns true if a 'bKGD' chunk will be output.

  Overrides:
    `isBackgroundSet` in class `PNGEncodeParam`

### setBitDepth

    public void setBitDepth(int bitDepth)

  Sets the desired bit depth for a palette image. The bit depth must be one of 1, 2, 4, or 8, or else an `IllegalArgumentException` will be thrown.

  Specified by:
    `setBitDepth` in class `PNGEncodeParam`

### setPalette

    public void setPalette(int[] rgb)

  Sets the RGB palette of the image to be encoded. The `rgb` parameter contains alternating R, G, B values for each color index used in the image. The number of elements must be a multiple of 3 between 3 and 3*256.

  The 'PLTE' chunk will encode this information.

  Parameters:
    `rgb` - An array of `int`s.

### getPalette

    public int[] getPalette()

  Returns the current RGB palette.

  If the palette has not previously been set, or has been unset, an `IllegalStateException` will be thrown.

  Returns:
    An array of `int`s.
  Throws:
    `java.lang.IllegalStateException` - if the palette is not set.

### unsetPalette

    public void unsetPalette()

  Suppresses the 'PLTE' chunk from being output.

### isPaletteSet

    public boolean isPaletteSet()

  Returns true if a 'PLTE' chunk will be output.

### setBackgroundPaletteIndex

    public void setBackgroundPaletteIndex(int index)

  Sets the palette index of the suggested background color.

  The 'bKGD' chunk will encode this information.

### getBackgroundPaletteIndex

    public int getBackgroundPaletteIndex()

  Returns the palette index of the suggested background color.

  If the background palette index has not previously been set, or has been unset, an `IllegalStateException` will be thrown.

  Throws:
    `java.lang.IllegalStateException` - if the palette index is not set.

### setPaletteTransparency

    public void setPaletteTransparency(byte[] alpha)

  Sets the alpha values associated with each palette entry. The `alpha` parameter should have as many entries as there are RGB triples in the palette.

  The 'tRNS' chunk will encode this information.

### getPaletteTransparency

    public byte[] getPaletteTransparency()

  Returns the alpha values associated with each palette entry.

  If the palette transparency has not previously been set, or has been unset, an `IllegalStateException` will be thrown.

  Throws:
    `java.lang.IllegalStateException` - if the palette transparency is not set.

Copyright © 2004 Apache Software Foundation. All Rights Reserved.