com.sun.pdfview.colorspace

## Class IndexedColor

- java.lang.Object
- - com.sun.pdfview.colorspace.PDFColorSpace
  - - com.sun.pdfview.colorspace.IndexedColor

    public class IndexedColor
    extends PDFColorSpace

A PDFColorSpace for an IndexedColor model

### Field Summary

Fields
`protected byte[]` `finalcolors` r,g,and b components of the color table as a single array, for Java's IndexColorModel

### Fields inherited from class com.sun.pdfview.colorspace.PDFColorSpace

`COLORSPACE_CMYK, COLORSPACE_GRAY, COLORSPACE_PATTERN, COLORSPACE_RGB`

### Constructor Summary

Constructors
Constructor and Description
`IndexedColor(java.awt.Color[] table)` create a new IndexColor PDFColorSpace based on a table of colors.
`IndexedColor(PDFColorSpace base, int count, PDFObject stream)` create a new IndexColor PDFColorSpace based on another PDFColorSpace, a count of colors, and a stream of values.

### Method Summary

Methods
`byte[]` `getColorComponents()` Get the table of color components
`int` `getCount()` Get the number of indices
`int` `getNumComponents()` get the number of components of this colorspace (1)
`PDFPaint` `getPaint(float[] components)` get the color represented by the index.

### Methods inherited from class com.sun.pdfview.colorspace.PDFColorSpace

`getColorSpace, getColorSpace, getColorSpace`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### finalcolors

    protected byte[] finalcolors

r,g,and b components of the color table as a single array, for Java's IndexColorModel

### Constructor Detail

#### IndexedColor

    public IndexedColor(PDFColorSpace base,
                int count,
                PDFObject stream)
                 throws java.io.IOException

create a new IndexColor PDFColorSpace based on another PDFColorSpace, a count of colors, and a stream of values. Every consecutive n bytes of the stream is interpreted as a color in the base ColorSpace, where n is the number of components in that color space.

Parameters:
  `base` - the color space in which the data is interpreted
  `count` - the number of colors in the table
  `stream` - a stream of bytes. The number of bytes must be count*n, where n is the number of components in the base colorspace.
Throws:
  `java.io.IOException`

#### IndexedColor

    public IndexedColor(java.awt.Color[] table)
                 throws java.io.IOException

create a new IndexColor PDFColorSpace based on a table of colors.

Parameters:
  `table` - an array of colors
Throws:
  `java.io.IOException`

### Method Detail

#### getCount

    public int getCount()

Get the number of indices

#### getColorComponents

    public byte[] getColorComponents()

Get the table of color components

#### getNumComponents

    public int getNumComponents()

get the number of components of this colorspace (1)

Overrides:
  `getNumComponents` in class `PDFColorSpace`

#### getPaint

    public PDFPaint getPaint(float[] components)

get the color represented by the index.

Overrides:
  `getPaint` in class `PDFColorSpace`
Parameters:
  `components` - an array of exactly one integer number whose value is between 0 and the size of the color table - 1.
Returns:
  a PDFPaint object representing the closest Color to the given components.