com.lowagie.text.rtf.graphic

## Class RtfShapePosition

- java.lang.Object
- - com.lowagie.text.Chunk
  - - com.lowagie.text.rtf.RtfAddableElement
    - - com.lowagie.text.rtf.graphic.RtfShapePosition

- All Implemented Interfaces:
    Element, RtfBasicElement, RtfElementInterface

      public class RtfShapePosition
      extends RtfAddableElement

  The RtfShapePosition stores position and ordering information for one RtfShape.
  Version:
    $Id$
  Author:
    Mark Hall (Mark.Hall@mail.room3b.eu), Thomas Bickel (tmb99@inode.at)

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `private int` | `bottom` The bottom coordinate of this RtfShapePosition.
    `private boolean` | `ignoreXRelative` Whether to ignore the horizontal relative position.
    `private boolean` | `ignoreYRelative` Whether to ignore the vertical relative position.
    `private int` | `left` The left coordinate of this RtfShapePosition.
    `static int` | `POSITION_X_RELATIVE_COLUMN` Constant for horizontal positioning relative to the column.
    `static int` | `POSITION_X_RELATIVE_MARGIN` Constant for horizontal positioning relative to the margin.
    `static int` | `POSITION_X_RELATIVE_PAGE` Constant for horizontal positioning relative to the page.
    `static int` | `POSITION_Y_RELATIVE_MARGIN` Constant for vertical positioning relative to the margin.
    `static int` | `POSITION_Y_RELATIVE_PAGE` Constant for vertical positioning relative to the page.
    `static int` | `POSITION_Y_RELATIVE_PARAGRAPH` Constant for vertical positioning relative to the paragraph.
    `private int` | `right` The right coordinate of this RtfShapePosition.
    `private boolean` | `shapeBelowText` Whether the shape is below the text.
    `private int` | `top` The top coordinate of this RtfShapePosition.
    `private int` | `xRelativePos` The horizontal relative position.
    `private int` | `yRelativePos` The vertical relative position.
    `private int` | `zOrder` The z order of this RtfShapePosition.

    - ### Fields inherited from class com.lowagie.text.rtf.RtfAddableElement

      `doc, inHeader, inTable`

    - ### Fields inherited from class com.lowagie.text.Chunk

      `ACTION, attributes, BACKGROUND, CHAR_SPACING, COLOR, content, ENCODING, font, GENERICTAG, HSCALE, HYPHENATION, IMAGE, LOCALDESTINATION, LOCALGOTO, NEWLINE, NEWPAGE, NEXTPAGE, OBJECT_REPLACEMENT_CHARACTER, PDFANNOTATION, REMOTEGOTO, SEPARATOR, SKEW, SPLITCHARACTER, SUBSUPSCRIPT, TAB, TEXTRENDERMODE, UNDERLINE`

    - ### Fields inherited from interface com.lowagie.text.rtf.RtfBasicElement

      `CLOSE_GROUP, COMMA_DELIMITER, DELIMITER, OPEN_GROUP, TWIPS_FACTOR`

    - ### Fields inherited from interface com.lowagie.text.Element

      `ALIGN_BASELINE, ALIGN_BOTTOM, ALIGN_CENTER, ALIGN_JUSTIFIED, ALIGN_JUSTIFIED_ALL, ALIGN_LEFT, ALIGN_MIDDLE, ALIGN_RIGHT, ALIGN_TOP, ALIGN_UNDEFINED, ANCHOR, ANNOTATION, AUTHOR, CCITT_BLACKIS1, CCITT_ENCODEDBYTEALIGN, CCITT_ENDOFBLOCK, CCITT_ENDOFLINE, CCITTG3_1D, CCITTG3_2D, CCITTG4, CELL, CHAPTER, CHUNK, CREATIONDATE, CREATOR, HEADER, IMGRAW, IMGTEMPLATE, JBIG2, JPEG, JPEG2000, KEYWORDS, LIST, LISTITEM, MARKED, MULTI_COLUMN_TEXT, PARAGRAPH, PHRASE, PRODUCER, PTABLE, RECTANGLE, ROW, SECTION, SUBJECT, TABLE, TITLE, YMARK`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `RtfShapePosition(int top, int left, int right, int bottom)` Constructs a new RtfShapePosition with the four bounding coordinates.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `isShapeBelowText()` Gets whether the shape is below the text.
    `protected void` | `setIgnoreXRelative(boolean ignoreXRelative)` Set whether to ignore the horizontal relative position.
    `protected void` | `setIgnoreYRelative(boolean ignoreYRelative)` Set whether to ignore the vertical relative position.
    `void` | `setShapeBelowText(boolean shapeBelowText)` Sets whether the shape is below the text.
    `void` | `setXRelativePos(int relativePos)` Sets the relative horizontal position.
    `void` | `setYRelativePos(int relativePos)` Sets the relative vertical position.
    `void` | `setZOrder(int order)` Sets the z order to use.
    `void` | `writeContent(java.io.OutputStream result)` Write this RtfShapePosition.

    - ### Methods inherited from class com.lowagie.text.rtf.RtfAddableElement

      `intToByteArray, isEmpty, setInHeader, setInTable, setRtfDocument`

    - ### Methods inherited from class com.lowagie.text.Chunk

      `append, getAttributes, getCharacterSpacing, getChunks, getContent, getFont, getHorizontalScaling, getHyphenation, getImage, getTextRise, getWidthPoint, hasAttributes, isContent, isNestable, process, setAction, setAnchor, setAnchor, setAnnotation, setAttributes, setBackground, setBackground, setCharacterSpacing, setFont, setGenericTag, setHorizontalScaling, setHyphenation, setLocalDestination, setLocalGoto, setNewPage, setRemoteGoto, setRemoteGoto, setSkew, setSplitCharacter, setTextRenderMode, setTextRise, setUnderline, setUnderline, toString, type`

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

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

- - ### Field Detail

    - #### POSITION_X_RELATIVE_PAGE

          public static final int POSITION_X_RELATIVE_PAGE

      Constant for horizontal positioning relative to the page.
      See Also:
        Constant Field Values

    - #### POSITION_X_RELATIVE_MARGIN

          public static final int POSITION_X_RELATIVE_MARGIN

      Constant for horizontal positioning relative to the margin.
      See Also:
        Constant Field Values

    - #### POSITION_X_RELATIVE_COLUMN

          public static final int POSITION_X_RELATIVE_COLUMN

      Constant for horizontal positioning relative to the column.
      See Also:
        Constant Field Values

    - #### POSITION_Y_RELATIVE_PAGE

          public static final int POSITION_Y_RELATIVE_PAGE

      Constant for vertical positioning relative to the page.
      See Also:
        Constant Field Values

    - #### POSITION_Y_RELATIVE_MARGIN

          public static final int POSITION_Y_RELATIVE_MARGIN

      Constant for vertical positioning relative to the margin.
      See Also:
        Constant Field Values

    - #### POSITION_Y_RELATIVE_PARAGRAPH

          public static final int POSITION_Y_RELATIVE_PARAGRAPH

      Constant for vertical positioning relative to the paragraph.
      See Also:
        Constant Field Values

    - #### top

          private int top

      The top coordinate of this RtfShapePosition.

    - #### left

          private int left

      The left coordinate of this RtfShapePosition.

    - #### right

          private int right

      The right coordinate of this RtfShapePosition.

    - #### bottom

          private int bottom

      The bottom coordinate of this RtfShapePosition.

    - #### zOrder

          private int zOrder

      The z order of this RtfShapePosition.

    - #### xRelativePos

          private int xRelativePos

      The horizontal relative position.

    - #### yRelativePos

          private int yRelativePos

      The vertical relative position.

    - #### ignoreXRelative

          private boolean ignoreXRelative

      Whether to ignore the horizontal relative position.

    - #### ignoreYRelative

          private boolean ignoreYRelative

      Whether to ignore the vertical relative position.

    - #### shapeBelowText

          private boolean shapeBelowText

      Whether the shape is below the text.

  - ### Constructor Detail

    - #### RtfShapePosition

          public RtfShapePosition(int top,
                          int left,
                          int right,
                          int bottom)

      Constructs a new RtfShapePosition with the four bounding coordinates.
      Parameters:
        `top` - The top coordinate.
        `left` - The left coordinate.
        `right` - The right coordinate.
        `bottom` - The bottom coordinate.

  - ### Method Detail

    - #### isShapeBelowText

          public boolean isShapeBelowText()

      Gets whether the shape is below the text.
      Returns:
        `True` if the shape is below, `false` if the text is below.

    - #### setShapeBelowText

          public void setShapeBelowText(boolean shapeBelowText)

      Sets whether the shape is below the text.
      Parameters:
        `shapeBelowText` - `True` if the shape is below, `false` if the text is below.

    - #### setXRelativePos

          public void setXRelativePos(int relativePos)

      Sets the relative horizontal position. Use one of the constants provided in this class.
      Parameters:
        `relativePos` - The relative horizontal position to use.

    - #### setYRelativePos

          public void setYRelativePos(int relativePos)

      Sets the relative vertical position. Use one of the constants provides in this class.
      Parameters:
        `relativePos` - The relative vertical position to use.

    - #### setZOrder

          public void setZOrder(int order)

      Sets the z order to use.
      Parameters:
        `order` - The z order to use.

    - #### setIgnoreXRelative

          protected void setIgnoreXRelative(boolean ignoreXRelative)

      Set whether to ignore the horizontal relative position.
      Parameters:
        `ignoreXRelative` - `True` to ignore the horizontal relative position, `false` otherwise.

    - #### setIgnoreYRelative

          protected void setIgnoreYRelative(boolean ignoreYRelative)

      Set whether to ignore the vertical relative position.
      Parameters:
        `ignoreYRelative` - `True` to ignore the vertical relative position, `false` otherwise.

    - #### writeContent

          public void writeContent(java.io.OutputStream result)
                            throws java.io.IOException

      Write this RtfShapePosition.
      Specified by:
        `writeContent` in interface `RtfBasicElement`
      Specified by:
        `writeContent` in class `RtfAddableElement`
      Parameters:
        `result` - The `OutputStream` to write the content to
      Throws:
        `java.io.IOException`