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