Class PNGImage

java.lang.Object
org.apache.xmlgraphics.image.codec.util.SimpleRenderedImage
org.apache.xmlgraphics.image.codec.png.PNGImage
All Implemented Interfaces:
RenderedImage, PNGConstants

class PNGImage extends SimpleRenderedImage implements PNGConstants
TO DO: zTXt chunks
  • Field Details

    • colorTypeNames

      private static final String[] colorTypeNames
    • bandOffsets

      private int[][] bandOffsets
    • bitDepth

      private int bitDepth
    • colorType

      private int colorType
    • compressionMethod

      private int compressionMethod
    • filterMethod

      private int filterMethod
    • interlaceMethod

      private int interlaceMethod
    • paletteEntries

      private int paletteEntries
    • redPalette

      private byte[] redPalette
    • greenPalette

      private byte[] greenPalette
    • bluePalette

      private byte[] bluePalette
    • alphaPalette

      private byte[] alphaPalette
    • bkgdRed

      private int bkgdRed
    • bkgdGreen

      private int bkgdGreen
    • bkgdBlue

      private int bkgdBlue
    • grayTransparentAlpha

      private int grayTransparentAlpha
    • redTransparentAlpha

      private int redTransparentAlpha
    • greenTransparentAlpha

      private int greenTransparentAlpha
    • blueTransparentAlpha

      private int blueTransparentAlpha
    • maxOpacity

      private int maxOpacity
    • significantBits

      private int[] significantBits
    • suppressAlpha

      private boolean suppressAlpha
    • expandPalette

      private boolean expandPalette
    • output8BitGray

      private boolean output8BitGray
    • outputHasAlphaPalette

      private boolean outputHasAlphaPalette
    • performGammaCorrection

      private boolean performGammaCorrection
    • expandGrayAlpha

      private boolean expandGrayAlpha
    • generateEncodeParam

      private boolean generateEncodeParam
    • decodeParam

      private PNGDecodeParam decodeParam
    • encodeParam

      private PNGEncodeParam encodeParam
    • emitProperties

      private boolean emitProperties
    • fileGamma

      private float fileGamma
    • userExponent

      private float userExponent
    • displayExponent

      private float displayExponent
    • chromaticity

      private float[] chromaticity
    • sRGBRenderingIntent

      private int sRGBRenderingIntent
    • postProcess

      private int postProcess
    • xPixelsPerUnit

      protected int xPixelsPerUnit
    • yPixelsPerUnit

      protected int yPixelsPerUnit
    • unitSpecifier

      protected int unitSpecifier
    • POST_NONE

      private static final int POST_NONE
      See Also:
    • POST_GAMMA

      private static final int POST_GAMMA
      See Also:
    • POST_GRAY_LUT

      private static final int POST_GRAY_LUT
      See Also:
    • POST_GRAY_LUT_ADD_TRANS

      private static final int POST_GRAY_LUT_ADD_TRANS
      See Also:
    • POST_PALETTE_TO_RGB

      private static final int POST_PALETTE_TO_RGB
      See Also:
    • POST_PALETTE_TO_RGBA

      private static final int POST_PALETTE_TO_RGBA
      See Also:
    • POST_ADD_GRAY_TRANS

      private static final int POST_ADD_GRAY_TRANS
      See Also:
    • POST_ADD_RGB_TRANS

      private static final int POST_ADD_RGB_TRANS
      See Also:
    • POST_REMOVE_GRAY_TRANS

      private static final int POST_REMOVE_GRAY_TRANS
      See Also:
    • POST_REMOVE_RGB_TRANS

      private static final int POST_REMOVE_RGB_TRANS
      See Also:
    • POST_EXP_MASK

      private static final int POST_EXP_MASK
      See Also:
    • POST_GRAY_ALPHA_EXP

      private static final int POST_GRAY_ALPHA_EXP
      See Also:
    • POST_GAMMA_EXP

      private static final int POST_GAMMA_EXP
      See Also:
    • POST_GRAY_LUT_ADD_TRANS_EXP

      private static final int POST_GRAY_LUT_ADD_TRANS_EXP
      See Also:
    • POST_ADD_GRAY_TRANS_EXP

      private static final int POST_ADD_GRAY_TRANS_EXP
      See Also:
    • streamVec

      private List<InputStream> streamVec
    • dataStream

      private DataInputStream dataStream
    • bytesPerPixel

      private int bytesPerPixel
    • inputBands

      private int inputBands
    • outputBands

      private int outputBands
    • chunkIndex

      private int chunkIndex
    • textKeys

      private List textKeys
    • textStrings

      private List textStrings
    • ztextKeys

      private List ztextKeys
    • ztextStrings

      private List ztextStrings
    • theTile

      private WritableRaster theTile
    • gammaLut

      private int[] gammaLut
    • expandBits

      private final byte[][] expandBits
    • grayLut

      private int[] grayLut
    • GrayBits8

      private static final int[] GrayBits8
    • colorModelGray8

      private static final ComponentColorModel colorModelGray8
    • GrayAlphaBits8

      private static final int[] GrayAlphaBits8
    • colorModelGrayAlpha8

      private static final ComponentColorModel colorModelGrayAlpha8
    • GrayBits16

      private static final int[] GrayBits16
    • colorModelGray16

      private static final ComponentColorModel colorModelGray16
    • GrayAlphaBits16

      private static final int[] GrayAlphaBits16
    • colorModelGrayAlpha16

      private static final ComponentColorModel colorModelGrayAlpha16
    • GrayBits32

      private static final int[] GrayBits32
    • colorModelGray32

      private static final ComponentColorModel colorModelGray32
    • GrayAlphaBits32

      private static final int[] GrayAlphaBits32
    • colorModelGrayAlpha32

      private static final ComponentColorModel colorModelGrayAlpha32
    • RGBBits8

      private static final int[] RGBBits8
    • colorModelRGB8

      private static final ComponentColorModel colorModelRGB8
    • RGBABits8

      private static final int[] RGBABits8
    • colorModelRGBA8

      private static final ComponentColorModel colorModelRGBA8
    • RGBBits16

      private static final int[] RGBBits16
    • colorModelRGB16

      private static final ComponentColorModel colorModelRGB16
    • RGBABits16

      private static final int[] RGBABits16
    • colorModelRGBA16

      private static final ComponentColorModel colorModelRGBA16
    • RGBBits32

      private static final int[] RGBBits32
    • colorModelRGB32

      private static final ComponentColorModel colorModelRGB32
    • RGBABits32

      private static final int[] RGBABits32
    • colorModelRGBA32

      private static final ComponentColorModel colorModelRGBA32
  • Constructor Details

  • Method Details

    • initGammaLut

      private void initGammaLut(int bits)
    • initGrayLut

      private void initGrayLut(int bits)
    • parse_IHDR_chunk

      private void parse_IHDR_chunk(PNGChunk chunk)
    • parse_IEND_chunk

      private void parse_IEND_chunk(PNGChunk chunk) throws Exception
      Throws:
      Exception
    • createComponentColorModel

      public static ColorModel createComponentColorModel(SampleModel sm)
      A convenience method to create an instance of ComponentColorModel suitable for use with the given SampleModel. The SampleModel should have a data type of DataBuffer.TYPE_BYTE, TYPE_USHORT, or TYPE_INT and between 1 and 4 bands. Depending on the number of bands of the SampleModel, either a gray, gray+alpha, rgb, or rgb+alpha ColorModel is returned.
    • parse_PLTE_chunk

      private void parse_PLTE_chunk(PNGChunk chunk)
    • parse_bKGD_chunk

      private void parse_bKGD_chunk(PNGChunk chunk)
    • parse_cHRM_chunk

      private void parse_cHRM_chunk(PNGChunk chunk)
    • parse_gAMA_chunk

      private void parse_gAMA_chunk(PNGChunk chunk)
    • parse_hIST_chunk

      private void parse_hIST_chunk(PNGChunk chunk)
    • parse_iCCP_chunk

      private void parse_iCCP_chunk(PNGChunk chunk)
    • parse_pHYs_chunk

      private void parse_pHYs_chunk(PNGChunk chunk)
    • parse_sBIT_chunk

      private void parse_sBIT_chunk(PNGChunk chunk)
    • parse_sRGB_chunk

      private void parse_sRGB_chunk(PNGChunk chunk)
    • parse_tEXt_chunk

      private void parse_tEXt_chunk(PNGChunk chunk)
    • parse_tIME_chunk

      private void parse_tIME_chunk(PNGChunk chunk)
    • parse_tRNS_chunk

      private void parse_tRNS_chunk(PNGChunk chunk)
    • parse_zTXt_chunk

      private void parse_zTXt_chunk(PNGChunk chunk)
    • createRaster

      private WritableRaster createRaster(int width, int height, int bands, int scanlineStride, int bitDepth)
    • decodeSubFilter

      private static void decodeSubFilter(byte[] curr, int count, int bpp)
    • decodeUpFilter

      private static void decodeUpFilter(byte[] curr, byte[] prev, int count)
    • decodeAverageFilter

      private static void decodeAverageFilter(byte[] curr, byte[] prev, int count, int bpp)
    • decodePaethFilter

      private static void decodePaethFilter(byte[] curr, byte[] prev, int count, int bpp)
    • processPixels

      private void processPixels(int process, Raster src, WritableRaster dst, int xOffset, int step, int y, int width)
    • decodePass

      private void decodePass(WritableRaster imRas, int xOffset, int yOffset, int xStep, int yStep, int passWidth, int passHeight)
      Reads in an image of a given size and returns it as a WritableRaster.
    • decodeImage

      private void decodeImage(boolean useInterlacing)
    • getTile

      public Raster getTile(int tileX, int tileY)
      Specified by:
      getTile in interface RenderedImage