Class mxPngEncodeParam.Palette

    • Constructor Detail

      • Palette

        public Palette()
        Constructs an instance of PNGEncodeParam.Palette.
    • Method Detail

      • 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 mxPngEncodeParam
      • 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 ints.
      • 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 ints.
        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.