GlyfCompositeComp
Date: 2017-05-25

org.apache.fontbox.ttf

## Class GlyfCompositeComp

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

-     public class GlyfCompositeComp
      extends java.lang.Object

  This class is based on code from Apache Batik a subproject of Apache XMLGraphics. see http://xmlgraphics.apache.org/batik/ for further details.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `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.

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `GlyfCompositeComp(org.apache.fontbox.ttf.TTFDataStream bais)` Constructor.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `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

  - ### Constructor Detail

    - #### GlyfCompositeComp

          protected GlyfCompositeComp(org.apache.fontbox.ttf.TTFDataStream bais)
                               throws java.io.IOException

      Constructor.
      Parameters:
        `bais` - the stream to be read
      Throws:
        `java.io.IOException` - is thrown if something went wrong

  - ### 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