org.apache.fontbox.ttf

## Class GlyfCompositeComp

- java.lang.Object
- - org.apache.fontbox.ttf.GlyfCompositeComp

    public class GlyfCompositeComp
    extends Object

This class is based on code from Apache Batik, a subproject of Apache XMLGraphics. See The Apache™ Batik Project for further details.

### Field Summary

Fields
`protected static short` `ARG_1_AND_2_ARE_WORDS` If set, the arguments are words; otherwise, they are bytes.
`protected static short` `ARGS_ARE_XY_VALUES` If set, the arguments are xy values; otherwise they are points.
`protected static short` `MORE_COMPONENTS` Indicates at least one more glyph after this one.
`protected static short` `ROUND_XY_TO_GRID` If set, xy values are rounded to those of the closest grid lines.
`protected static short` `USE_MY_METRICS` If set, this forces the aw and lsb (and rsb) for the composite to be equal to those from this original glyph.
`protected static short` `WE_HAVE_A_SCALE` If set, there is a simple scale; otherwise, scale = 1.0.
`protected static short` `WE_HAVE_A_TWO_BY_TWO` There is a 2 by2 transformation that will be used to scale the component.
`protected static short` `WE_HAVE_AN_X_AND_Y_SCALE` The x direction will use a different scale from the y direction.
`protected static short` `WE_HAVE_INSTRUCTIONS` Following the last component are instructions for the composite character.

### Method Summary

All Methods Instance Methods Concrete Methods
`short` `getArgument1()` Returns argument 1.
`short` `getArgument2()` Returns argument 2.
`int` `getFirstContour()` Returns the index of the first contour.
`int` `getFirstIndex()` Returns the first index.
`short` `getFlags()` Returns the flags of the glyph.
`int` `getGlyphIndex()` Returns the index of the first contour.
`double` `getScale01()` Returns the scale-01 value.
`double` `getScale10()` Returns the scale-10 value.
`double` `getXScale()` Returns the x-scaling value.
`int` `getXTranslate()` Returns the x-translation value.
`double` `getYScale()` Returns the y-scaling value.
`int` `getYTranslate()` Returns the y-translation value.
`int` `scaleX(int x, int y)` Transforms an x-coordinate of a point for this component.
`int` `scaleY(int x, int y)` Transforms a y-coordinate of a point for this component.
`void` `setFirstContour(int idx)` Sets the index for the first contour.
`void` `setFirstIndex(int idx)` Sets the first index.

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

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

### Field Detail

#### ARG_1_AND_2_ARE_WORDS

    protected static final short ARG_1_AND_2_ARE_WORDS

If set, the arguments are words; otherwise, they are bytes.

See Also:
  Constant Field Values

#### ARGS_ARE_XY_VALUES

    protected static final short ARGS_ARE_XY_VALUES

If set, the arguments are xy values; otherwise they are points.

See Also:
  Constant Field Values

#### ROUND_XY_TO_GRID

    protected static final short ROUND_XY_TO_GRID

If set, xy values are rounded to those of the closest grid lines.

See Also:
  Constant Field Values

#### WE_HAVE_A_SCALE

    protected static final short WE_HAVE_A_SCALE

If set, there is a simple scale; otherwise, scale = 1.0.

See Also:
  Constant Field Values

#### MORE_COMPONENTS

    protected static final short MORE_COMPONENTS

Indicates at least one more glyph after this one.

See Also:
  Constant Field Values

#### WE_HAVE_AN_X_AND_Y_SCALE

    protected static final short WE_HAVE_AN_X_AND_Y_SCALE

The x direction will use a different scale from the y direction.

See Also:
  Constant Field Values

#### WE_HAVE_A_TWO_BY_TWO

    protected static final short WE_HAVE_A_TWO_BY_TWO

There is a 2 by2 transformation that will be used to scale the component.

See Also:
  Constant Field Values

#### WE_HAVE_INSTRUCTIONS

    protected static final short WE_HAVE_INSTRUCTIONS

Following the last component are instructions for the composite character.

See Also:
  Constant Field Values

#### USE_MY_METRICS

    protected static final short USE_MY_METRICS

If set, this forces the aw and lsb (and rsb) for the composite to be equal to those from this original glyph.

See Also:
  Constant Field Values

### Method Detail

#### setFirstIndex

    public void setFirstIndex(int idx)

Sets the first index.

Parameters:
  `idx` - the first index

#### getFirstIndex

    public int getFirstIndex()

Returns the first index.

Returns:
  the first index.

#### setFirstContour

    public void setFirstContour(int idx)

Sets the index for the first contour.

Parameters:
  `idx` - the index of the first contour

#### getFirstContour

    public int getFirstContour()

Returns the index of the first contour.

Returns:
  the index of the first contour.

#### getArgument1

    public short getArgument1()

Returns argument 1.

Returns:
  argument 1.

#### getArgument2

    public short getArgument2()

Returns argument 2.

Returns:
  argument 2.

#### getFlags

    public short getFlags()

Returns the flags of the glyph.

Returns:
  the flags.

#### getGlyphIndex

    public int getGlyphIndex()

Returns the index of the first contour.

Returns:
  index of the first contour.

#### getScale01

    public double getScale01()

Returns the scale-01 value.

Returns:
  the scale-01 value.

#### getScale10

    public double getScale10()

Returns the scale-10 value.

Returns:
  the scale-10 value.

#### getXScale

    public double getXScale()

Returns the x-scaling value.

Returns:
  the x-scaling value.

#### getYScale

    public double getYScale()

Returns the y-scaling value.

Returns:
  the y-scaling value.

#### getXTranslate

    public int getXTranslate()

Returns the x-translation value.

Returns:
  the x-translation value.

#### getYTranslate

    public int getYTranslate()

Returns the y-translation value.

Returns:
  the y-translation value.

#### scaleX

    public int scaleX(int x,
                      int y)

Transforms an x-coordinate of a point for this component.

Parameters:
  `x` - The x-coordinate of the point to transform
  `y` - The y-coordinate of the point to transform
Returns:
  The transformed x-coordinate

#### scaleY

    public int scaleY(int x,
                      int y)

Transforms a y-coordinate of a point for this component.

Parameters:
  `x` - The x-coordinate of the point to transform
  `y` - The y-coordinate of the point to transform
Returns:
  The transformed y-coordinate